原则:在(两个bundle)中找不到目标实体



我正在尝试在Symfony2中使用Doctrine进行ManyToOne关系。我的实体是:

namespace MyApiBundleEntity;
use DoctrineORMMapping as ORM;
use DoctrineCommonCollectionsArrayCollection;
/**
 * @ORMEntity
 * @ORMTable(name="company")
 */
class Company
{
    /**
     * @var integer
     *
     * @ORMId
     * @ORMColumn(type="integer")
     * @ORMGeneratedValue(strategy="IDENTITY")
     */
    protected $id;
public function __construct() {
    $this->users = new ArrayCollection();
}
/**
 * Get id
 *
 * @return integer 
 */
public function getId()
{
    return $this->id;
}

另一个:

namespace MyUserBundleEntity;
use DoctrineORMMapping as ORM;
use FOSUserBundleEntityUser as BaseUser;
/**
 * User
 *
 * @ORMTable(name="user")
 * @ORMEntity
 */
class User extends BaseUser
{
    public function __construct()
    {
        parent::__construct();
    }
    /**
     * @var
     * @ORMId
     * @ORMColumn(type="integer")
     * @ORMGeneratedValue(strategy="AUTO")
     */
    protected $id;
...
/**
     * @ORMManyToOne(targetEntity="MyApiBundleEntityCompany")
     * @ORMJoinColumn(name="idLastCompany", referencedColumnName="id")
     */
    protected $idLastCompany;

与其他属性及其集合和获取方法无关,但我唯一的关系是公司与idLastCompany之间的关系。例如,当我清除缓存时,出现此错误:

映射异常:目标实体 My\ApiBundle\Entity\Copmany 不能 可在"My\UserBundle\Entity\User#idLastCompany"中找到。

知道吗?谢谢

错误消息告诉您所需的一切:)

MappingException:在"My\UserBundle\Entity\User#idLastCompany"中找不到目标实体My\ApiBundle\Entity\Copmany
您在实体文件名、实体类名称或文档块$idLastCompany关系字段中拼写了 CoPMany 而不是 Company。
即使您在此处发布的代码是正确的,您的实际代码也包含拼写错误。

我会在整个项目中搜索"Copmany"并修复拼写错误。然后它就会起作用。

相关内容

  • 没有找到相关文章

最新更新