このinversedBy
アノテーションとmappedBy
アノテーションにはどのような値が入りますか? また、targetEntityとreferencedColumnNameは何ですか?(DOCTRINE)mappedByとinversedByおよびtargetEntityアノテーション
これは私のcomment entity
の例です。ご覧のとおり、私のチュートリアルでは、文字列comments
をinversedBy
属性に、\Application\Entity\Post
をtargetREntity
属性の内側に記述するように言います。この1のために
/**
* This class represents a comment related to a blog post.
* @ORM\Entity
* @ORM\Table(name="comment")
*/
class Comment
{
/**
* @ORM\ManyToOne(targetEntity="\Application\Entity\Post", inversedBy="comments")
* @ORM\JoinColumn(name="post_id", referencedColumnName="id")
*/
protected $post;
}
、それはcomments
を言います。 このコメント文字列は正確に何を指していますか? コメントの意味はわかりません。これはテーブルへのマッピングか、上のクラスのORM名なのか、それとも何か他のものです。
はまた、ここで
がmappedBy
を使用する場合の例である:
/**
* @ORM\Entity
* @ORM\Table(name="post")
*/
class Post
{
// Post status constants.
const STATUS_DRAFT = 1; // Draft.
const STATUS_PUBLISHED = 2; // Published.
/**
* @ORM\OneToMany(targetEntity="\Application\Entity\Comment", mappedBy="post")
* @ORM\JoinColumn(name="id", referencedColumnName="post_id")
*/
protected $comments;
私は約owning sides and inverse sides
click hereを読み始めたが、理解することは極めて困難でした。
ここに記載されている内容はすばらしいものです。
助けがあれば助かります。