Ich versuche, ein Formular mit einem Unterformular im Admin-Bereich zu implementieren.
%Vor%Mein Problem ist das Folgende:
%Vor% Also, wie mache ich das Formular eine Dropdown-Liste für jeden Fremdschlüssel ( fighter
, opponent
).
Die 2 Fremdschlüssel sind (siehe unten):
fighter
) opponent
) kämpfer / models.py
%Vor%kämpfer / admin.py
%Vor%Mein erster Gedanke war, dass Sie ManyToMany-Fields verwenden und dann die Anzahl der Relationen auf zwei begrenzen können. Aber dann dachte ich, dass man nie sicher sein kann, welches Fighter-Objekt welchen Typ darstellt.
Dann habe ich einen kurzen Blick in die Django-Docs geworfen und etwas gefunden, das dein Problem beantworten sollte: Django-Doc
Der interessante Teil ist:
Die Mitgliedschaft hat zwei Fremdschlüssel für die Person (Person und Inviter), wodurch die Beziehung zweideutig wird und Django nicht wissen kann, welche verwendet werden soll. In diesem Fall müssen Sie explizit angeben, welche Fremdschlüssel Django verwenden soll, indem Sie through_fields verwenden, wie im obigen Beispiel.
Ich hoffe, dass dir das hilft.
Tags und Links django django-admin