我有朋友和类别 - 每个朋友都属于一个类别。以下是它们之间的关系:
在类别类中:
/**
* @ORM\OneToMany(targetEntity="Friend", mappedBy="category", cascade={"remove"})
* @ORM\OrderBy({"name" = "ASC"})
*/
protected $friends;
在朋友班:
/**
* @ORM\ManyToOne(targetEntity="Category", inversedBy="friends")
* @ORM\JoinColumn(name="category_id", referencedColumnName="id")
*/
protected $category;
我想要的是删除一个类别,当这种情况发生时,属于这个类别的朋友有一个类别 = null。有没有办法让它更优雅?
如您所见,我试过了cascade={"remove"}
,它很完美,但它也会删除朋友。有没有更好的解决方案,然后从当前类别中选择所有朋友,将他们的类别字段设置为空,然后删除该类别?