我正在使用一些复杂的原始查询集,并将模型和模型自定义查询集分为2个单独的文件。
在模型中,我需要导入自定义查询集:
objects = OwnerModelQuerySet.as_manager()
对于自定义查询集类的每种方法,我使用:
Owner.objects.raw(
所以我需要导入模型。所以我有一个循环依赖问题。 自定义查询集中有什么方法可以直接使用名称访问/获取模型?
答案 0 :(得分:3)
您不需要将模型导入到查询集文件中。在您的queryset方法中,您可以通过self.model
访问模型。
但是在任何情况下,如果将查询集作为管理员附加到所有者,则Owner.objects
是 ownerModelQueryset,因此您可以执行self.raw
,而无需在以下位置引用模型全部。