问题
I have some models like this:
class Container(models.Model):
pass
class Parent(models.Model):
container = models.ForeignKey(Container, related_name='items')
pass
class Child(Parent):
pass
class RedHeadedStepChild(Parent):
pass
Is it possible to use select_subclasses()
to prefetch fields in the container? I want to do something like this:
qs = Container.objects.all().prefetch_related('items')\
.select_subclasses() # <---
So that the items
related field of each Container
is retrieved in each of its respective subclass types.
回答1:
What about:
Container.objects.prefetch_related(
Prefetch('items', Parent.objects.select_subclasses())
)
来源:https://stackoverflow.com/questions/29014085/for-django-model-utils-how-can-select-subclasses-be-applied-to-fields-of-an