2013-03-25 76 views
0

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

有没有一种方法可以以更好的方式实现像独特的实体这样的事情,或者更好地编写一个函数来计算名称和用户的类别数量并将其用于验证 - 如果已经有一个类别用这个用户的名字 - 打印一个meassage,或者创建新的类别。

回答

4

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

喜欢的东西:

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

而且通过这些字段名的UniqueEntity

+0

非常感谢您! :) – Faery 2013-04-24 09:00:06