0
$em->remove($news);
を呼び出して、私は、制約違反エラーを得ました。
私は2つのエンティティ、ニュースと画像を持っています。私はこのように、ニュースへの参照のみを持っているImage
インサイド
/**
* @ORM\OneToOne(targetEntity="Image", orphanRemoval=true, cascade={"persist"})
*/
private $cover;
/**
* @ORM\OneToOne(targetEntity="Image", orphanRemoval=true, cascade={"persist"})
*/
private $img;
/**
* @ORM\OneToMany(targetEntity="Image", mappedBy="news", orphanRemoval=true, cascade={"persist", "remove"})
*/
private $gallery;
:
/**
* @var News
*
* @ORM\ManyToOne(targetEntity="News", inversedBy="gallery", cascade={"remove"})
*/
private $news;
私はconstraitを持っていることを知っているNews
で
私はこのようなImage
から3つの参照を、持っていますそこに走っているが、カスケードしないでください= {"削除"} ORMの側にこの理由がありますか?
私はここで何が欠けていますか?もし私が追加すれば、多くのToOne関係に
* @ORM\JoinColumn(onDelete="CASCADE")
のようになります。私はそれがORM側にあることが可能であるかどうかを知りたいと思います。
ご回答ありがとうございます。残念ながら、これは私が試したワンショットでした。今すぐ確認したところ、再試行しました.OnCascadeでJoinColumnを削除し、カスケード削除を他のエンティティに適用すると、制約違反が残ります – Leggy7
{bin/app}/consoleでデータベースを更新してもよろしいですか? doctrine:schema:update --force?私は嘘をついていませんが、私は年齢の間エンティティの関係を論じています。実行することを覚えています。 – JezEmery
@JezEmeryはい、サー。私はこのasnwerに応じて変更を行ってDBを更新し、もう一度試しました。残念ながら結果は同じです。制約が稼動している間は親エンティティを削除したくありません。私は画像を削除することができる前に、リスナーを使用してヌルに関係を設定しました。しかし、それは絶対的なものではない – Leggy7