Doctrine orm 如何使用';为空';对于教条2
我有两张桌子,比如 教训Doctrine orm 如何使用';为空';对于教条2,doctrine-orm,Doctrine Orm,我有两张桌子,比如 教训 class Lesson { /** * @var integer * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * * @ORM\OneToOne(targetEntity="Acme\UserBundle\Entity\EvalMutor", mappedBy="lesso
class Lesson
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
*
* @ORM\OneToOne(targetEntity="Acme\UserBundle\Entity\EvalMutor", mappedBy="lesson")
*/
private $evalM;
}
在EvalMutor中
class EvalMutor
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
*
* @ORM\ManyToOne(targetEntity="Acme\UserBundle\Entity\Lesson", inversedBy="evalM")
* @ORM\JoinColumn(name="lesson", referencedColumnName="id")
*/
private $lesson;
/**
* @ORM\Column(type="text",nullable=true)
*
*/
private $comment;
}
有些课程的行有evalM,有些没有
我想拿起没有evalM的课程行
SELECT p FROM UserBundle:Lesson p Where p.evalM is null
不管它回来了
A single-valued association path expression to an inverse side is not supported in DQL queries. Use an explicit join instead.
我该怎么解决这个问题呢?首先,我想这个关系是不正确的。当您应该放置
OneToMany
时,您已经放置了onetomone
关系。我说的是$evalM
的注释
有关更多信息,请查看