Symfony-映射彼此不一致

提格兰

我有2个实体,用户和关注者。

/**
 * @ORM\Entity
 * @ORM\Table(name="users")
 */
class User extends BaseUser
{
    /**
     * @ORM\OneToMany(targetEntity="Follower", mappedBy="user")
     */
    protected $followers;

    /**
     * @ORM\OneToMany(targetEntity="Follower", mappedBy="follower")
     */
    protected $followings;
}


/**
 * @ORM\Entity
 * @ORM\Table(name="follows")
 */
class Follower
{        
    /**
     * @ORM\ManyToOne(targetEntity="User", inversedBy="followers")
     */
    protected $user;

    /**
     * @ORM\ManyToOne(targetEntity="User", inversedBy="followers")
     */
    protected $follower;
}

用户具有关注者($ followers)和关注者($ followings)。

我不确定为什么,但是我的开发人员分析器说:

AppBundle \ Entity \ User#followings和AppBundle \ Entity \ Follower#follower的映射彼此不一致。

AppBundle \ Entity \ Follower#follower和AppBundle \ Entity \ User#followers的映射彼此不一致。

为什么它们容易感染,应该这样做?

马泰奥

在跟随者实体中,替换为:

/**
 * @ORM\ManyToOne(targetEntity="User", inversedBy="followers")
 */
protected $follower;

和:

/**
 * @ORM\ManyToOne(targetEntity="User", inversedBy="followings")
 */
protected $follower;

您可以使用命令doctrine:schema:validate来检查当前映射以获取有效的正向和反向映射。

PHP应用程序/控制台学说:模式:验证

希望有帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章