Plusieurs clés étrangères Django

29 Nov

Lors de l'utilisation de plus d'une clé étrangère dans un modèle Django en utilisant TabularInline dans  l'admin de django, en essayant de créer une migration, une erreur  "has more than one ForeignKey".
Pour résoudre le problème il suffit d'ajouter l'attribut  fk_name avec le nom du champ du foreignkey:

#models.py:

class MyModel(models.Model):
    mon_champ = models.ForeignKey(OtherModel, null=True, blank=True)
    mon_champ_2 = models.ForeignKey(OtherModel2, null=True, blank=True)
#admin.py:

class OtherModelInline(TabularInlinel):
    model: OtherModel
    fk_name: mon_champ


class OtherModel2Inline(TabularInlinel):
    model: OtherModel2
    fk_name: mon_champ_2


Voilà tout est dans la documentation Django n'hésitez pas à y faire un tour, elle est extrêmement bien faite une des meilleures 

Publié le: Dimanche 29 novembre 2015
blog comments powered by Disqus
Monter

© Circonflex-studio - Tous droits réservés - Mentions legales
Développeur web indépendant / Webdesigner / Intégrateur
Nice - Cannes - Monaco - Antibes - côte d'azur | site valide HTML 5

Ce site à été développé en Python avec le framework Django

"http://www.cssawards.net/nominee/circonflex-studio/"