J'adore quand on prend un exemple sans regarder la page suivante qui te montre un mapping mais en yaml...Du coup ça parait moins illisible que le xml que tu balances ;)
Le voilà donc, et, vous en conviendrez, c'est quand même moins dégueux que le xml présenté au dessus (désolé, j'utilise doctrine tous les jours et je me suis jamais paluché une ligne de xml ;), donc je ne pouvais que réagir !) :
[^] # Re: Doctrine2
Posté par Guillaume Chanaud (site web personnel) . En réponse à la dépêche En vrac : Doctrine 2, MySQL 5.5 et VimGolf. Évalué à 5.
Le voilà donc, et, vous en conviendrez, c'est quand même moins dégueux que le xml présenté au dessus (désolé, j'utilise doctrine tous les jours et je me suis jamais paluché une ligne de xml ;), donc je ne pouvais que réagir !) :
# Doctrine.Tests.ORM.Mapping.User.dcm.yml
Doctrine\Tests\ORM\Mapping\User:
type: entity
table: cms_users
id:
id:
type: integer
generator:
strategy: AUTO
fields:
name:
type: string
length: 50
oneToOne:
address:
targetEntity: Address
joinColumn:
name: address_id
referencedColumnName: id
oneToMany:
phonenumbers:
targetEntity: Phonenumber
mappedBy: user
cascade: cascadePersist
manyToMany:
groups:
targetEntity: Group
joinTable:
name: cms_users_groups
joinColumns:
user_id:
referencedColumnName: id
inverseJoinColumns:
group_id:
referencedColumnName: id
lifecycleCallbacks:
prePersist: [ doStuffOnPrePersist, doOtherStuffOnPrePersistToo ]
postPersist: [ doStuffOnPostPersist
(bon j'ai perdu le formatage du yaml au passage par templeet...)