2011-09-08 41 views
16

我想创建两个属性的唯一约束。 Doctrine2的YML配置没有很好的文档记录。所以我尝试用YML来处理XML。这段代码有什么问题?如何在Doctrine2的YML中创建唯一约束?

unique-constraints: 
    name: event_user 
    columns: 
     event_id: ~ 
     user_id: ~ 

在此先感谢。

回答

29

最后我设法通过这个代码来创建它:

uniqueConstraints: 
     event_user_idx: 
      columns: event_id,user_id 

但感谢鲁文的回答。

+2

谢谢,这是都知道:很难找到主义-2良好的文档与Symfony的-2。 对于那些不明白为什么这个人不起作用的小细节 - 你会在'event_user_idx'之前错过一个标签,而在'columns'之前会错过一个标签。 Yaml对空间很敏感...... – guyaloni

+0

与Django的'unique_together'类似吗? – nmenego

+0

uniqueContraints部分的YAML文件的哪个级别去? – Andrew

8

你应该试试:

uniqueConstraints: 
    event_user: 
    columns: 
     - event_id 
     - user_id 
1

我不知道,如果this part of the documentation最近已经或不添加,但这里是这样说的:

# ECommerceProduct.orm.yml 
ECommerceProduct: 
    type: entity 
    fields: 
    # definition of some fields 
    uniqueConstraints: 
    search_idx: 
     columns: [ name, email ]