12
我無法弄清楚如何我可以有2捆綁之間的實體關係。Symfony2 - Doctrine - 2捆綁之間的實體關係
最近我一直到目前爲止的成功是這樣的:
用戶實體:
<?php
namespace Acme\AuthBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\Common\Collections\ArrayCollection;
/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
*/
class User extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\generatedValue(strategy="AUTO")
*/
protected $id;
//...
/**
* @ORM\OneToMany(targetEntity="Acme\NewsBundle\Entity\Article", mappedBy="author")
*/
protected $articles;
//...
文章實體:
<?php
namespace Acme\NewsBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="Acme\NewsBundle\Entity\ArticleRepository")
* @ORM\Table(name="articles")
*/
class Article
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
//...
/**
* @ORM\ManyToOne(targetEntity="Acme\AuthBundle\Entity\User", inversedBy="articles")
*/
protected $author;
//...
在生成實體和更新數據庫,我沒有得到任何錯誤,並在數據庫中正確設置關係。
但當我嘗試獲取的文章中,我得到這樣的:
Class Acme\AuthBundle\Entity\Article does not exist
500 Internal Server Error - ReflectionException
注意,用戶實體處於AuthBundle條和第實體NewsBundle。
謝謝。
對不起,錯字錯誤,我實際上已將Aief更改爲Acme只是爲了發帖(我會編輯它)。所以不是這樣。 – LBridge
問題在於它在AuthBundle中查找文章實體時,它應該在NewsBundle中查找。我不明白爲什麼。 – LBridge
目前您是否對Doctrine使用任何緩存?嘗試清潔它。刪除生成的代理類也可以包含錯誤的類名稱。 – Gedrox