luk*_*nko 0 django polymorphism django-polymorphic
我有如下模型结构:
class MyObject(PolymorphicModel):
group = models.ForeignKey(Group)
class Group(PolymorphicModel):
pass
class SpecialGroup(Group):
pass
Run Code Online (Sandbox Code Playgroud)
现在,我想选择所有MyObjects,哪个组是SpecialGroup类型.
是否可以使用QuerySet API实现它,而无需运行原始SQL?我想出的唯一可行解决方案是使用.extra()运行额外的"select"SQL查询.
提前谢谢,干杯!
在内部,django_polymorphic使用Django的ContentType框架来确定每个模型使用的实际类.
from django.contrib.contenttypes.models import ContentType
MyObject.objects.filter(group__polymorphic_ctype=ContentType.objects.get_for_model(SpecialGroup))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
709 次 |
| 最近记录: |