来自存储库的findBy触发内部错误,但不是本地

时间:2019-03-11 15:01:45

标签: php symfony

我对这个很迷茫...我不知道有什么问题。

我有这段代码,它们只是从一个地方查找所有消息。 如您所见,该地点不能为null。

在开发模式下,我没有错误。 在生产模式下,findBy触发内部错误。 我确定是这样,因为我可以毫无错误地进入第一个注释的Json return,但是我无法到达第二个。

我也确定错误是在findBy而不是存储库上,因为我试图分两行,并且getRepository没有错误。

    if (!isset($place)) {
        return new JsonResponse([
            'success' => false,
            'message' => "Place invalide"
        ]);
    }
    /*return new JsonResponse([
        'success' => false,
        'message' => "test0",
    ]);*/

    $messages_place = $em->getRepository('AppBundle:MessagePlace')->findBy(array('idPlace' =>$place));
    return new JsonResponse([
        'success' => false,
        'message' => "test",
    ]);

在我的MessagePlace实体中

/**
 * @var \AppBundle\Entity\Place
 *
 * @ORM\ManyToOne(targetEntity="Place")
 * @ORM\JoinColumns({
 *   @ORM\JoinColumn(name="id_place", referencedColumnName="id")
 * })
 */
private $idPlace;

我不明白为什么这段代码会在服务器上而不是在本地主机上触发错误500。

感谢您的协助。

编辑:我的坏问题解决了,我在MessagePlace中遇到了一个错字问题,我正在查询一个id_image而不是is_image ...对不起。

1 个答案:

答案 0 :(得分:1)

“如您所见,该地点不能为空。” “可为空”设置的JoinColumn默认值为true,因此可以为null。

https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/annotations-reference.html#annref_joincolumn