une seule de Beaucoup de Relation dans django
Je suis en train de faire un un-à-plusieurs dans django.
Dans mon modèle, j'ai une Personne de la classe et du Groupe classe et de la relation que je veux faire c'est qu'un Groupe de N personnes à l'intérieur, et un groupe de cann existe pas sans au moins une personne à l'intérieur de
Dans une MER diagramme, il serait comme(imaginez ce sont des entités et de relations)
|groupe|1====<>-----N|personne|
Vous devriez noter que la balise [mer] se réfère à la Mer de projet (mobile distribution Linux). Donc j'ai enlevé le tag de votre question.
oh, merci pour les conseils. Je na sais qu'il y a une distro linux appelée mer XD
oh, merci pour les conseils. Je na sais qu'il y a une distro linux appelée mer XD
OriginalL'auteur leojg | 2012-12-21
Vous devez vous connecter pour publier un commentaire.
Comme Arthur etats, c'est assez bien documenté dans la documentation de Django.
Il est en fait assez facile:
Comme vous pouvez le voir, il vous suffit de créer une clé étrangère dans la classe personne -> c'est tout à fait équivalent à la façon dont vous définissez manuellement dans la base de données, si vous devez le faire.
Django ajoutera automatiquement l'inverse de la relation, de sorte que vous pouvez trouver des gens à partir d'un groupe:
Noter que le
related_name
spécifie le nom de l'inverse de la relation. Cette option est facultative, mais je suppose que vous voulez utiliserpeople
au lieu depersons
.Si vous ajoutez le champ de clé étrangère comme décrit, Django va ajouter automatiquement l'inverse de la relation, de sorte que vous pouvez interroger
some_group.persons
. Si vous souhaitez utilisersome_group.people
, vous pouvez définir le nom lié aux "gens". J'ai édité le post pour en tenir compte.OriginalL'auteur nilu