ticket_attachments
、ticket_comments
、およびticket_status_history
でticket
を保存する必要があります。 ticket
オブジェクトだけを残していますが、添付ファイル、コメント、および履歴を保存したいと思います。私は教義とsymfonyと注釈を使用しています。symfonyとdoctrineを関連付けオブジェクトやテーブルとともにpostgresqlに保存できませんか?
ticket
にmappedByとcascade removeを使用して3つの配列コレクションを作成しました。また、添付ファイル、コメント、および履歴にinversedByを使用しました。しかし、持続してフラッシュした後にはticket
だけが保存されますが、他のオブジェクト、つまり添付ファイル、コメント、履歴は保存されません。しかし、Noエラーと表示されます。
Ticket.php
/**
* @ORM\OneToMany(targetEntity="AppBundle\Entity\TicketAttachments", mappedBy="ticket", cascade={"persist", "remove"})
*/
private $attachments;
/**
* @ORM\OneToMany(targetEntity="AppBundle\Entity\TicketComments", mappedBy="ticket", cascade={"persist", "remove"})
*/
private $comments;
/**
* @ORM\OneToMany(targetEntity="AppBundle\Entity\TicketStatusHistory", mappedBy="ticket", cascade={"persist", "remove"})
*/
private $historys;
public function __construct()
{
$this->attachments = new ArrayCollection();
$this->comments = new ArrayCollection();
$this->historys = new ArrayCollection();
}
歴史、コメントとAttachments.php
/**
* @var \AppBundle\Entity\Ticket
*
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\Ticket", inversedBy="historys")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="ticket_id", referencedColumnName="id")
* })
*/
private $ticket;
すべてが、それはセッターとゲッターだ持っています。問題はどこだ?
in Ticket.php添付ファイル 'public function setTicketAttachmentsList($ attachments){ $ this-> attachments = $ attachments; return $ this; } 'と添付ファイルのpublic function setTicket(\ AppBundle \ Entity \ Ticket $ ticket = null) { $ this-> ticket = $ ticket; return $ this; } ' – Hunter