当我执行 orm:schema-tool:create 时,我正在试验这个错误。这是我第一次使用 Doctrinem,所以我有几个疑问,我认为导致错误的一个原因是我有一个带有 3 个 Comment 对象数组的 Player 类。我对 db 方案的想法是:
player_comment(id_player,id_comment)
commentsliked(id_player,id_comment)
commentsdisliked(id_player,id_comment)
请注意,comments 是双向关系,尽管 commentsLiked 和 commentsDisliked 不是。
据我了解,Doctrine 想将之前的 3 个表命名为“player_comment”。
提前致谢。
我的类 Player 看起来像这样:
/**
* @Entity @Table(name="players")
*/
class Player
{
/**
* @Id @Column(type="integer") @GeneratedValue
* @var int
**/
private $id;
/**
* @OneToMany(targetEntity="Comment", mappedBy="writer")
* @var Comment[]
**/
private $comments = null;
/**
* @ManyToMany(targetEntity="Comment")
* @Table(name="commentsliked")
* @var Comment[]
**/
private $commentsLiked = null;
/**
* @ManyToMany(targetEntity="Comment")
* @Table(name="commentsdisliked")
* @var Comment[]
**/
private $commentDisliked = null;
}
我的班级评论如下所示:
/**
* @Entity @Table(name="comments")
*/
class Comment {
/**
* @Id @Column(type="integer") @GeneratedValue
* @var int
**/
private $id;
/**
* @ManyToOne(targetEntity="Player", inversedBy="comments")
* @var Player
**/
private $writer;
}