Как установить параметр id для getNumberOfTasks()? Параметр id должен иметь значение поля id из базы данных. Я сделал $ entities-> GetId() но я получаю сообщение об ошибке, как Попытка получить свойство необъектных DefaultController.phpОтправить идентификатор в качестве параметра в Symfony2
public function indexAction()
{
$em = $this->getDoctrine()->getManager();
$entities = $em->getRepository('TestBundle:Projects')->findAll();
$tasks = $em->getRepository('TestBundle:Tasks')->getNumberOfTasks($entities->getId);
/*dump($entities);
die();
*/
return $this->render('TestBundle:Default:index.html.twig', [
'projects' => $entities,
'tasks' => $tasks,
]
);
}
Задачи Хранилище
public function getNumberOfTasks($id)
{
$qb = $this->createQueryBuilder('p')
->where('p.projects = :id')
->setParameter('id', 1)
->getQuery();
return count($qb->getResult());
}
public function getNumberOfCompletedTasks($id)
{
$qb = $this->createQueryBuilder('p')
->where('p.projects = :id','p.completed = 1')
->setParameter('id', 1)
->getQuery();
return count($qb->getResult());
}
public function getPercentComplete($id)
{
$numberOfTasks = $this->getNumberOfTasks($id);
$numberOfCompletedTasks = $this->getNumberOfCompletedTasks($id);
if($numberOfTasks == 0)
return 100;
return ($numberOfCompletedTasks/$numberOfTasks) * 100;
}
Я думаю, вы могли бы получить доступ задач в веточке. Можете ли вы показать нам сущности? –
'$ entities' - это один объект или массив объектов? – xurshid29
@ ZsoltGyöngyösi Да, я пробовал его с помощью {{projects.tasks | tasks}}, который дал мне общее количество задач. Но здесь я хочу, чтобы общее количество задач вычисляло процент оставшихся заданий. – Raaz