2011-09-08 46 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 ]