繁体   English   中英

Doctrine2映射错误

[英]Doctrine2 mapping error

这是我的课程:

首先是modelMetaKey类:

  /**
    * @Entity(repositoryClass="models\repository\meta\modelMetaKey")
    * @table(name="model_meta_key", uniqueConstraints={@UniqueConstraint(columns={"meta_id", "mkey_id"})})
    */
    class modelMetaKey extends \models\entity
    {
        /**
        * The meta
        * @var \models\core\model\meta
        * @ManyToOne(targetEntity="models\core\model\meta", inversedBy="modelKeys")
        * @JoinColumn(name="meta_id", referencedColumnName="id");
        */
        private $meta;
        ...
    }

第二个meta类:

/**
 * @Entity(repositoryClass="models\repository\core\model\meta")
 * @table(name="core_model_meta")
 */
class meta extends model
{
    /**
     * Keys defined for this model
     * @var \models\meta\modelMetaKey"
     * @OneToMany(targetEntity="models\meta\modelMetaKey", mappedBy="meta")
     */
    private $modelKeys;
    ...
}

当我运行教义orm:validate-schema时,出现以下消息:

Mapping]  FAIL - The entity-class 'models\meta\modelMetaKey' mapping is invalid:
* The association models\meta\modelMetaKey#meta refers to the inverse side field models\core\model\meta#modelKeys which does not exist.

我知道该学说在我的元类中找不到$ modelKeys,但是我不明白为什么,因为它在那里!

注意:模型和\\ models \\ entity当然是从映射的超级类派生的;)

我为这个错误而疯狂...如果有人有解释或更好的解决方案,请分享

这是实际的代码吗?:

/**
 * Keys defined for this model
 * @var \models\meta\modelMetaKey"
 * @OneToMany(targetEntity="models\meta\modelMetaKey", mappedBy="meta")
 */
private $modelKeys;

因为我想像\\models\\meta\\modelMetaKey之后的"可能会使以下映射注释无效...但这只是一个猜测。

(这是我有权写的评论)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM