Критерии Доктрины для фильтрации по свойству подобъекта - PullRequest
0 голосов
/ 28 июня 2019

Как я могу использовать критерии Doctrine для фильтрации по свойству подобъекта?

Например, если у меня есть userCollection со следующими объектами:

[
  {"birthday":"1982-02-17","mother":{"name":"JaneDoe"}},
  {"birthday":"1982-02-17","mother":{"name":"MaryDoe"}},
  {"birthday":"1982-02-17","mother":{"name":"SusanDoe"}}
 ]

Как вернуть все сущности, у которых день рождения 1982-02-17, а маму зовут JaneDoe?

$criteria = Criteria::create()
    ->where(Criteria::expr()->eq("birthday", "1982-02-17"))
    ->where(Criteria::expr()->eq("mother->name", "JaneDoe"))
;
$birthdayUsers = $userCollection->matching($criteria);

Я знаю, что Doctrine обычно не используется таким образом, но у меня есть естественный ключ в сущности mother (намного лучше, чем просто имя!), И я бы не хотел сначала запрашивать сущность mother первый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...