Как я могу использовать критерии 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
первый.