как я могу создать пользовательский поиск в Symfony2, что я могу вызвать из контекста объекта (например, метод getter) вместо контекста репозитория. Вот мой запрос в классе EntityRepository:
public function getUpVotes($trip_id)
{
return count($this->getEntityManager()
->createQueryBuilder()
->select('t')
->from('VputiTripBundle:Trip', 't')
->join('t.ratings', 'r')
->where('r.trip = :tid')
->andWhere('r.up = :up')
->setParameters(['tid' => $trip_id, 'up' => 1])
->getQuery()
->getResult());
}
Целью этого является то, что я могу назвать это $model-> getUpVotes() вместо репозитория сущности вызова и передать параметры вручную.
Если у вас установлена ассоциация, вы можете использовать get с фильтром.
public function getUpVotes()
{
return $this->ratings->filter(
function (RatingInterface $rating) {
return 1 === $rating->getUp();
}
);
}