我有兩個實體:一個Person
和一個Address
。如何刪除可能處於「OneToMany」關係的實體
- 一個
Person
可以有一個Address
- 的
Address
可以從Person
生活自給自足。
I'have創建這樣的關係:
地址
/**
* @ORM\OneToMany(targetEntity="Person", mappedBy="address", cascade={"detach"})
*/
protected $persons;
人
/**
* @ORM\ManyToOne(targetEntity="Address", inversedBy="persons", cascade={"detach"})
* @ORM\JoinColumn(name="address_id", referencedColumnName="id")
*/
protected $address;
當我現在嘗試刪除Address
是相關到Person
它的結果,當然,在「完整性約束衝突」。我怎樣才能告訴學說detach 從Person
。如果在兩者上嘗試使用cascade={"detach"}
但沒有任何反應。
'detach'和'delete'操作(顯然)有區別。我假設你想從數據庫中物理刪除記錄,對吧? –
其實我想刪除物理地址,重置'Person'中的引用。 – insertusernamehere
好的,我添加了應該適合您的問題的答案... –