0

唯一实体对我很有用,但有一个问题。我有用户和类别。每个类别都有 user_id,以便更清楚哪个用户创建了它以及它属于哪个用户。我想要的是每个用户的类别都是唯一的 - 所以一个用户不能有两个同名的类别,但两个不同的用户可以有完全相同的类别。

有没有办法通过唯一实体之类的更好的方式实现这一点,或者最好编写一个函数来按名称和用户计算类别数量并将其用于验证 - 如果已经有一个具有给定名称的类别对于这个用户 - 打印一条消息,否则创建新类别。

4

1 回答 1

4

您可以为类别表中的 name 和 user_id 列创建唯一索引。

就像是:

* @ORM\Table(name="categories",
*            uniqueConstraints={@ORM\UniqueConstraint(name="name_user_id__idx", 
*                                                     columns={"name", "user_id"})})

并将这些字段名称传递给UniqueEntity

于 2013-03-25T13:43:23.957 回答