多对一自定义字段 - 唯一

时间:2012-11-01 14:57:06

标签: symfony doctrine-orm symfony-2.1

我正在使用外表加入2个实体,正是这样: http://www.prowebdev.us/2012/07/symfnoy2-many-to-many-relation-with.html

我想了解为什么我们在外表中需要ID作为主键?

我宁愿把几个外键作为主键,这样我确保没有相同关系的双重条目。不是吗?

1 个答案:

答案 0 :(得分:0)

我认为Doctrine只希望每个表都有和Id字段,但是如果外键的组合是唯一的,你可以强制Doctrine检查:

use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
...
/*
 * @UniqueEntity({"foreign_key1", "foreign_key2"})
 * ...
 */
class JoinTable
{
    ...
}