这是我的课程:
首先是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;
...
}
第二个元类:
/**
* @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;
...
}
当我运行doctrine 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,但我不明白为什么因为它存在!?
备注: model和\ models \ entity当然是从映射的supperclass派生出来的;)
我对这个错误感到疯狂......如果有人有解释或更好的解决方案,请分享
答案 0 :(得分:0)
这是实际代码吗?:
/**
* Keys defined for this model
* @var \models\meta\modelMetaKey"
* @OneToMany(targetEntity="models\meta\modelMetaKey", mappedBy="meta")
*/
private $modelKeys;
因为我想"
之后的\models\meta\modelMetaKey
可以使下面的映射注释无效......但这只是猜测。
(如果我有权写这些,那将是评论)