Dies ist mein Modell:
%Vor%Wenn ich nun die Python-Shell öffne und folgendes mache:
%Vor%Dann erscheinen diese zwei:
%Vor%und wenn ich das tue:
%Vor% es gibt ein S
-Objekt zurück, aber wenn ich das tue:
es gibt drei S
-Objekte zurück (das erste S
-Objekt, das zurückgegeben wird, ist dasselbe, das zurückgegeben wurde, wenn ich a.s_set.all()
mache. Meine zwei Fragen sind,
1) Wie kommt es, wenn ich speziell owner = models.ForeignKey(User, related_name="%(app_label)s%(class)s_set")
gemacht habe, kann ein s_set
mit einem Benutzerobjekt aufgerufen werden?
2) Wie kommt es, dass sie zwei verschiedene Objektmengen zurückgeben (also wie kommt myapps_set.all()
zu 3 (die richtige Antwort), während s_set.all()
nur eins zurückgibt?
Ich habe gerade den Code mit django == 1.8 in einer sauberen virtuellen Umgebung getestet und habe nur eine umgekehrte Beziehung.
%Vor%Hier ist der Code: Ссылка
Es sieht so aus, als ob Sie etwas mit Ihrer lokalen Version von django gemacht haben oder Sie haben hier nicht den ganzen Code gezeigt.
Tags und Links django inheritance django-models