0

我有一个 500 内部错误:

类 MyProject\Bundle\QuestionsBundle\Entity\Doctrine\Common\Collections\Collection 不存在

我不明白它来自哪里,这是我的要求:

$sessionsdejeuxbyuser = $this->sessiondejeux_user_repository->findBy(array('user' => $user->getId()), array('created' => 'desc'), 1);

这是我的课: http: //pastebin.com/ZkJjWraj

我不知道它来自哪里,谷歌也没有给我任何线索......

4

2 回答 2

1

\Doctrine\Common\Collection\Collection我认为您的命名空间有问题,并且在某处使用声明......我认为它不是从根目录而是从命名空间寻找类\MyProject\Bundle\QuestionsBundle\Entity

正如您在评论中所建议的,您可以在使用 grep 编写错误代码时快速搜索:

grep -irn your_code src/MyProject/Bundle/QuestionsBundle/

i:忽略大小写,如果你不想担心这个

r: 递归

n: 打印文件名后的行号

于 2012-12-27T19:09:19.540 回答
0

cram1010 有个大线索!您需要导入 Collection 类的命名空间。默认情况下,如果你不这样做,PHP 期望类属于当前命名空间。

问题出在课堂上的setThematiques方法上。SessionDeJeux

你为什么将你的命名空间与 Collection 连接起来???

/**
 * Set thematiques
 *
 * @param \Doctrine\Common\Collections\Collection $thematiques
 */
public function setThematiques(\Doctrine\Common\Collections\Collection $thematiques)
{
    $this->thematiques[] = $thematiques;
}

相同的setTags

/**
 * Set tags
 *
 * @param \Doctrine\Common\Collections\Collection $tags
 */
public function setTags(\Doctrine\Common\Collections\Collection $tags)
{
    $this->tags[] = $tags;
}
于 2012-12-27T20:02:35.277 回答