IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Django Python Discussion :

Une ForeignKey pour 2 tables


Sujet :

Django Python

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut Une ForeignKey pour 2 tables
    Bonjour,

    Je souhaite faire converger 2 tables vers 1 seule table. Mais je ne sais pas comment affecter 2 champs à une ForeignKey. Je m'explique via le petit schéma ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Table A
     
    "champs"
    id_a = clé primaire
    type_a = clé secondaire, valeur par défaut = "type_a"
     
    Table B
     
    "champs"
    id_b =clé primaire
    type_b = clé secondaire, valeur par défaut = "type_b"
     
    Table A_B (table de convergence)
     
    "champs"
    id = clé primaire
    id_AB = ForeignKey(Table A.id_a; Table B.id_b)
    type_AB = ForeignKey(Table A.type_A, Table B.type_B)
    Est ce que cette façon de fonctionner indique que j'ai fait une erreur de modélisation ou je ne peut tout simplement pas faire ça avec Django ?

    Si quelqu'un a des idées...

    Merci

  2. #2
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Bonjour,

    Je ne sais pas si j'ai tout compris mais pourquoi ne pas avoir juste deux foreignkey, une vers a et une vers b (le type de a et de b étant déja defini dans a et b).

    As-tu un exemple concret de ce que tu veux faire?

    @+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    Merci de t'intéresser à mon problème pacificator,

    En fait, je souhaite avoir dans ma table de convergence les identifiants des tables A et B de la manière suivante:

    Contenu de la table de convergence AB
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    id       id_AB        type_AB
    1            1             typeA
    2            1             typeB
    3            8             typeA
    4            2             typeB
    etc...
    Cette table de convergence me permettrait de faire des liens vers le tables A et B.

    Si je fait 2 champs foreign key vers les tables a et b, ces derniers vont être vides une fois sur deux, ce qui est un peu dommage je trouve.

    Suis-je assez clair?

    Merci

  4. #4
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Ok, il faut que tu utilises les GenericForeignKey.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    Merci pacificator,

    Je crois que c'est ça qu'il me faut.

    Encore Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Une entité pour 2 tables identiques
    Par 18carats dans le forum Entity Framework
    Réponses: 3
    Dernier message: 21/06/2012, 14h43
  2. [SQLITE] passer une variable pour ma table
    Par Kexian_ dans le forum Général Python
    Réponses: 4
    Dernier message: 13/04/2012, 18h57
  3. Réponses: 8
    Dernier message: 25/05/2011, 10h10
  4. Création d'une vue pour deux tables
    Par Athanor027 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 26/10/2010, 07h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo