orm:schema-tool:create を実行すると、このエラーが発生します。Doctrinem を使用するのは初めてなので、いくつか疑問があります。エラーの原因は、Comment オブジェクトの 3 つの配列を持つクラス Player を持っていることだと思います。私のdbスキームの考えは次のとおりです。
player_comment(id_player,id_comment)
commentsliked(id_player,id_comment)
commentsdisliked(id_player,id_comment)
コメントは双方向の関係ですが、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;
}