dpmpa26468 2016-01-26 10:30
浏览 35
已采纳

Symfony - 映射彼此不一致

I have 2 Entities, User and Follower.

/**
 * @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;
}

User have followers ($followers) and followings ($followings).

I'm not sure why, but my dev profiler says:

The mappings AppBundle\Entity\User#followings and AppBundle\Entity\Follower#follower are inconsistent with each other.

The mappings AppBundle\Entity\Follower#follower and AppBundle\Entity\User#followers are inconsistent with each other.

Why they are incosistent and it should be done?

  • 写回答

2条回答 默认 最新

  • doushan9415 2016-01-26 11:07
    关注

    In the Follower Entity, replace this:

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

    with:

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

    You can use the command doctrine:schema:validate that checks the current mapping for valid forward and reverse mappings.

    php app/console doctrine:schema:validate

    Hope this help

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化