À quoi cela sert-il de définir les relations de type many ? Dans un sens c'est de la redondance non ?
Cyril FLIELLER Le 16 mars 2011 18:00, Lélio ML <[email protected]> a écrit : > Alors décrit tes relations de manière plus complète. Et attention, le nom > de > la relation sera repris par les getter et setter et si elle n'est pas > préciser la classe à laquelle se rapporte la relation. Il te manque > peut-être des majuscules aux bons endroits pour que ça marche nickel. > > Par exemple : > Customer: > ... > > Phase: > ... > > Business: > relations: > Customer: > class: Customer > local: customer_id > foreign: id > type: one > Phases: > class: Phase > local: id > foreign: business_id > type: many > > > -----Message d'origine----- > De : [email protected] [mailto:[email protected]] De > la > part de Cyril FLIELLER > Envoyé : mercredi 16 mars 2011 17:43 > À : [email protected] > Objet : RE: [symfony-fr] [Doctrine] Clé primaire étrangère > > 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] > > symfony-fr+<mailto:symfony-fr%[email protected]> > > <mailto:symfony-fr%[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] > > symfony-fr+<mailto:symfony-fr%[email protected]> > > <mailto:symfony-fr%[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] > <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
