2011-09-08 10 views
16

Desidero creare vincoli univoci su due attributi. La configurazione YML con Doctrine2 non è ben documentata. Quindi provo a tradurre l'XML in YML. Cosa c'è di sbagliato con questo codice?Come creare un vincolo univoco in YML in Doctrine2?

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

Grazie in anticipo.

risposta

29

Finalmente sono riuscito a crearlo da questo codice:

uniqueConstraints: 
     event_user_idx: 
      columns: event_id,user_id 

Ma grazie a Reuven per la risposta.

+2

Grazie, è estremamente difficile trovare una buona documentazione per la Dottrina-2 con Symfony-2. Solo piccoli dettagli per coloro che non capiscono perché questo non funziona - si perde una scheda prima di 'event_user_idx' e un'altra prima di 'colonne'. Yaml è sensibile agli spazi ... – guyaloni

+0

È simile a 'unique_together' di Django? – nmenego

+0

Quale livello del file YAML ha la sezione uniqueContraints? – Andrew

8

Si dovrebbe provare che:

uniqueConstraints: 
    event_user: 
    columns: 
     - event_id 
     - user_id 
1

Non so se this part of the documentation è stato aggiunto di recente o meno, ma qui è quello che dice:

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