Фильтры в Доктрине - PullRequest
       15

Фильтры в Доктрине

2 голосов
/ 19 августа 2009

nHibernate имеет замечательную функцию, называемую фильтрами, поэтому я могу создавать критерии для своих приложений в глобальном масштабе. Я начинаю проект на PHP и мне нужно использовать ORM, я хотел бы знать, есть ли в Doctrine аналогичная функция для управления условиями запроса.

спасибо

Ответы [ 2 ]

0 голосов
/ 17 декабря 2013

Doctrine 2.2 имеет систему фильтрации , которая позволяет разработчику добавлять SQL к условным предложениям запросов независимо от места, где генерируется SQL (например, из запроса DQL или путем загрузки связанных сущностей) .

Функциональность фильтра работает на уровне SQL. Сгенерирован ли SQL-запрос в Persister, во время отложенной загрузки, в дополнительных отложенных коллекциях или из DQL. Каждый раз, когда система выполняет итерацию по всем включенным фильтрам, добавляя новую часть SQL в качестве фильтра, возвращается.

Добавляя SQL к условным предложениям запросов, система фильтрации отфильтровывает строки, принадлежащие объектам, на уровне набора результатов SQL. Это означает, что отфильтрованные объекты никогда не гидратируются (что может быть дорого).

0 голосов
/ 13 января 2010

Я думаю, что вы ищете Doctrine Query Hooks.

Существует множество хуков для preUpdate, preSave, preCreate, postCreate, postUpdate, postSave, preSelect и т. Д. И т. Д. И т. Д.

Надеюсь, это поможет.

...