首页 > 解决方案 > Symfony 4.2 构建请求

问题描述

我正在 Symfony 中构建一个请求,但我有一个错误“$products not defined”。我该怎么做才能做出好的定义?你在我的请求中发现另一个问题吗?有什么可能的改善吗?谢谢!

    public function findEtudiantPasPointer($em, $utilisateurProf, $idCours, $idDate, $idCreneau)
    {
      $query = $em->createQuery("
      SELECT u.nomUtilisateur, u.prenomUtilisateur
      FROM App\Entity\Pointage po
      LEFT JOIN App\Entity\EtudiantCours ec ON po.utilisateurEtudiant = ec.etudiant
      JOIN App\Entity\Utilisateur u ON po.utilisateurEtudiant = u.id
      JOIN App\Entity\CoursPlanning cp ON po.cours = cp.cours
      AND cp.cours = :idCours
      AND cp.plageHoraire = :idCreneau
      AND cp.dateCours = :idDate
      AND cp.cours = :idCours
      AND cp.id = po.cours
      AND ec.cours = c.id
      ")
      ->setParameter('idCours', $idCours);
      ->setParameter('idDate', $idDate);
      ->setParameter('idCreneau', $idCreneau);

      $products = $query->getResult();
      return $products;
    }

标签: sqlsymfony

解决方案


您缺少;分号:

  // before
  ->setParameter('idCours', $idCours)
  ->setParameter('idDate', $idDate)
  ->setParameter('idCreneau', $idCreneau)

  // after
  ->setParameter('idCours', $idCours)
  ->setParameter('idDate', $idDate)
  ->setParameter('idCreneau', $idCreneau); // <---- HERE!

同样在 DQL 中ON,加入时没有,应该WITH改为。阅读DQL 的文档如何正确查询相关实体。


推荐阅读