Symfony 映射错误:“映射彼此不一致”&“关联是指不存在的反向边字段”

Ban*_*ple 1 php symfony doctrine-orm symfony-3.3

我得到了两个实体映射如下:

class ScriptFeedback
{
    /**
     * @ORM\ManyToOne(targetEntity="Script", inversedBy="feedback")
     */
    private $script;

    ...
}

class Script
{
    /**
     * @ORM\OneToMany(targetEntity="ScriptFeedback", mappedBy="script")
     */
    private $feebdack;

    ...
}
Run Code Online (Sandbox Code Playgroud)

这有效 - 我可以从中生成迁移,并且该站点完全按照我的意愿工作,正确链接我的脚本及其在数据库中的反馈。

但是 - 当我跑步时,doctrine:schema:validate我得到:

[映射] 失败 - 实体类 'AppBundle\Entity\Script' 映射无效: * 映射 AppBundle\Entity\Script#feebdack 和 AppBundle\Entity\ScriptFeedback#script 彼此不一致。

[映射] 失败 - 实体类 'AppBundle\Entity\ScriptFeedback' 映射无效: * 关联 AppBundle\Entity\ScriptFeedback#script 指的是不存在的反向侧字段 AppBundle\Entity\Script#feedback。

任何想法发生了什么?

Mz1*_*907 5

因为这个注释:

@ORM\ManyToOne(targetEntity="Script", inversedBy="feedback")
Run Code Online (Sandbox Code Playgroud)

您的 Script 实体中有拼写错误

private $feebdack;
Run Code Online (Sandbox Code Playgroud)

应该

private $feedback;
Run Code Online (Sandbox Code Playgroud)