Mais mon 1er exemple marche ! C'est le deuxième qui ne marche pas. Ce qui est plutôt bizarre car si doctrine sait gérer une double clé primaire étrangère pourquoi pas une seule. Le 16 mars 2011 17:37, "Lélio ML" <[email protected]> a écrit : > Il me semble que tu veux gérer des utilisateurs. A moins que ce ne soit pas > les utilisateurs de l'application (et je te prie de m'excuser alors de ma > méprise), le plugin sfGuard gère les utilisateurs, les groupes et les > permissions de l'application. > > Sinon, il faut savoir que Symfony/Doctrine n'apprécient pas du tout les clés > multiples. > Pour contourner ce soucis, je laisse un id comme clé primaire et je mets un > index unique sur les champs qui auraient du être dans la clé multiple. > > > > -----Message d'origine----- > De : [email protected] [mailto:[email protected]] De la > part de Cyril FLIELLER > Envoyé : mercredi 16 mars 2011 17:30 > À : [email protected] > Objet : Re: [symfony-fr] [Doctrine] Clé primaire étrangère > > J'avoue ne pas bien comprend à quoi va me servir sfDoctrineGuard ici ? > > Cyril FLIELLER > > > > Le 16 mars 2011 17:26, Lélio ML <[email protected]> a écrit : > > > Pourquoi ne pas utiliser le plugin sfDoctrineGuard ? > > -----Message d'origine----- > De : [email protected] > [mailto:[email protected]] De la > part de Cyril FLIELLER > Envoyé : mercredi 16 mars 2011 17:23 > À : [email protected] > Objet : [symfony-fr] [Doctrine] Clé primaire étrangère > > > J'ai un souci en définissant mon fichier yml, je n'obtiens pas le > SQL voulu. > > J'arrive à créer une table avec pour deux clés primaires étrangères > sans > souci pour stocker des groupes d'utilisateurs. J'ai en gros : > > groups: > columns: > label: { type: string(255), notnull: true } > persons: > columns: > email: { type: string(255), notnull: true } > lastname: { type: string(255), notnull: true } > firstname: { type: string(255), notnull: true } > > membersgroups: > columns: > person_id: { type: integer, primary: true } > group_id: { type: integer, primary: true } > relations: > persons: { onDelete: CASCADE, local: person_id, foreign: > id } > groups: { onDelete: CASCADE, local: group_id, foreign: id > } > > Ça nickel, ça marche. > > Mais par contre, je veux créer une autre table avec une clé primaire > étrangère et deux autres clés étrangères et là c'est le drame ! > > absences: > columns: > ......... > > missions: > columns: > absence_id: { type: integer, primary: true } > transport_id: { type: integer, notnull: true } > entite_id: { type: integer } > relations: > absences: { local: absence_id, foreign: id } > transport: { onDelete: CASCADE, local: transport_id, foreign: id > } > entite: { onDelete: CASCADE, local: entite_id, foreign: id } > > Et là, donc, c'est le drame, niveau SQL ça ne me génère pas la > contrainte de > clé étrangère sur ma table absence. > > > > > > > Cyril FLIELLER > > > > -- > Vous recevez ce message, car vous êtes abonné au groupe Google > Groupes > Symfony-fr. > Pour envoyer un message à ce groupe, adressez un e-mail à > [email protected]. > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse > [email protected] > <mailto:symfony-fr%[email protected]> . > Pour plus d'options, consultez la page de ce groupe : > http://groups.google.com/group/symfony-fr?hl=fr > > > -- > Vous recevez ce message, car vous êtes abonné au groupe Google > Groupes Symfony-fr. > Pour envoyer un message à ce groupe, adressez un e-mail à > [email protected]. > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse > [email protected] > <mailto:symfony-fr%[email protected]> . > Pour plus d'options, consultez la page de ce groupe : > http://groups.google.com/group/symfony-fr?hl=fr > > > > > -- > Vous recevez ce message, car vous êtes abonné au groupe Google Groupes > Symfony-fr. > Pour envoyer un message à ce groupe, adressez un e-mail à > [email protected]. > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse > [email protected]. > Pour plus d'options, consultez la page de ce groupe : > http://groups.google.com/group/symfony-fr?hl=fr > > > -- > Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. > Pour envoyer un message à ce groupe, adressez un e-mail à [email protected]. > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse [email protected]. > Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr >
-- Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Symfony-fr. Pour envoyer un message à ce groupe, adressez un e-mail à [email protected]. Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse [email protected]. Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/symfony-fr?hl=fr
