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

Répondre à