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
