我在实体中的删除约束方面遇到了一些麻烦。
我有一个实体商品和一个实体车辆,在商品中具有多对一的关系,所以一个商品只能在一个车辆中,而一个车辆可以有很多商品。所以我有:
class Merchandise{
/**
* @ORM\ManyToOne(targetEntity="Vehicle",inversedBy="merchandise")
* @ORM\JoinColumn(name="vehicle", referencedColumnName="id")
*/
private $vehicle;
}
class Vehicle{
/**
* @ORM\OneToMany(targetEntity="Merchandise",mappedBy="vehicle")
*/
private $merchandise;
}
我想要得到的是,当我尝试删除有车辆的商品时,无法删除该商品。但我不知道如何设置 ORM 级别限制约束。我尝试了 restrict={"remove"} 但它在 @ORM\OneToMany 中不存在。我还尝试放置一个返回 false 的 preRemove 函数,但它不起作用:(
任何想法?
谢谢!!!