Ich weiß, dass wir von einem Kind auf das Modell des Elternteils verweisen können, aber gibt es eine Möglichkeit, es andersherum zu haben?Kann eine Elternklasse prüfen, ob die Kindklasse ein solches Feld hat?
Entschuldigung für jeden Tippfehler hier.
Lasst uns sagen, wenn Eltern
class Parent(Model):
has_this = models.Charfield(max_length=128)
class Child(Parent):
has_that = models.Boolean(default=True)
ch = Child.objects.filter(id=1).first() // this will be instance of both Parent and Child as expected
pa = Parent.objects.filter(id=1).first() // is actually return the same as above but does not has the `Child` field `has_that`
Was ist meine Frage ist, gibt es eine Möglichkeit für pa
von einem regelmäßigen Parent
Differential wenn eine Abfrage Parent.objects.filter
aufgerufen wird versucht, ich isisntance
verwenden, aber für pa
, es ist nur wahr, wenn es Parent
für ch
ist, gilt es für beide. Ich kann mir keinen anderen Weg vorstellen, dies zu ändern.
Auch Parent
wird nicht abstrakt sein.
P.S. Ich dachte daran, hasattr
zu verwenden, aber das würde auch nicht funktionieren.
Vielen Dank im Voraus.
Klingt wie Sie wollen [Django Modellvererbung - nur Instanzen der Elternklasse in einer Abfrage wollen] (https://stackoverflow.com/questions/11853850/django-model-inheritance-only-want-instances-of-parent -Klasse-in-einer-Abfrage) – dhke