Doctrine 2 (Mitchell van Wijngaarden): мягкое удаление по-прежнему отображается в результатах поиска

Я использую решение Mitchell van Wijngaarden Doctrine (https://github.com/mitchellvanw/laravel-doctrine/wiki/Soft-Deleting) с Laravel 4.

Я настроил обратимое удаление, но обратимо удаленные объекты по-прежнему отображаются в результатах поиска. Например, следующий запрос:

$group_instructions = $this->entityManager->getRepository('GroupInstruction')->findBy(array('librarian'=>$user));

Этот запрос возвращает все объекты класса GroupInstruction, даже если поле «deleted_at» было заполнено отметкой времени. У меня сложилось впечатление, что все мягко удаленные элементы будут скрыты. Кто-нибудь имел опыт с этим?


person Ravioli87    schedule 27.10.2014    source источник


Ответы (1)


Чтобы активировать обратимое удаление, вам необходимо включить его для фильтров EntityManager. Я не уверен, как именно это делается на laravel, но на доктрине это делается так:

$em->getFilters()->enable('soft-deletable');

Подробнее см. здесь: https://github.com/Atlantic18/DoctrineExtensions/blob/master/doc/softdeleteable.md#setup-and-autoloading

person Pavel Dubinin    schedule 16.11.2014
comment
Это совсем другой пакет. - person winkbrace; 29.06.2015