У меня есть массив, содержащий данные. Я хочу показать свои данные по дате (новые данные в начале списка), используя атрибут «CreatedAt», тип которого — datetime. вот мой контроллер:
{
$em = $this->getDoctrine()->getManager();
$user= $this->get('security.context')->getToken()->getUser();
$congesshows = $em->getRepository('appUserBundle:Conges')
->findBy(array(),array('CreatedAt'=>'DESC'))
;
$role = $user->getRoles() ;
if ($role[0]== "ROLE_ADMIN") {
$congess = $em->getRepository('appUserBundle:Conges')
->findBy( array('etat' => 'En cours'))
;
}
else {
$congess = $em->getRepository('appUserBundle:Conges')
->findBy(array('etat' => 'En attente'))
;
}
return $this->render(
'appUserBundle:interne:please.html.twig',
array('conges' => $congess,'congesshows'=>$congesshows)
);
}
Я хочу заказать их, используя атрибут CreatedAt. Это не сработало { $congesshows = $em->getRepository('appUserBundle:Conges') ->findBy(array(),array('CreatedAt'=>'DESC')) }
Это предложение кажется подходящим для заказа. Какую версию доктрины вы используете?
Спасибо, ребята, это работает! if ($role[0] == "ROLE_ADMIN") { $congess = $em->getRepository('appUserBundle:Conges')->findBy(array('etat' => 'По ходу'), array( 'CreatedAt' => 'DESC')); } else { $congess = $em->getRepository('appUserBundle:Conges')->findBy(array('etat' => 'Внимание'), array('CreatedAt' => 'DESC')); }






Пробовали $congesshows = $em->getRepository('appUserBundle:Conges')
->createQueryBuilder(“c”)->orderBy(“CreatedAt”, 'DESC')->getQuery()->getResult()
;?
Спасибо, ребята, это работает! if ($role[0] == "ROLE_ADMIN") { $congess = $em->getRepository('appUserBundle:Conges')->findBy(array('etat' => 'По ходу'), array( 'CreatedAt' => 'DESC')); } else { $congess = $em->getRepository('appUserBundle:Conges')->findBy(array('etat' => 'Внимание'), array('CreatedAt' => 'DESC')); }
$congesshows включает все записи $congess. Что вы хотите показать?