我有朋友和类别 - 每个朋友属于一个类别。以下是它们的相关性:
类别类中的:
/**
* @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;
我想要的是删除一个类别,当这种情况发生时,属于这个类别的朋友有一个category = null。有没有办法让这更优雅?
如您所见,我尝试使用cascade={"remove"}
并且它很完美,但它也删除了朋友。有没有更好的解决方案,然后从当前类别中选择所有朋友,将他们的类别字段设置为null,然后删除该类别?