我有一个令人讨厌的列表理解,我想简化一个基本的django查询,但我遇到了Related Field got invalid lookup: document_task_type
result = [x for x in self.quote_tasks if x.task_definition.document_task_type == 'GENCNTR'][0]
查询导致错误
self.quote_tasks.filter(task_definition__document_task_type = 'GENCNTR')
答案 0 :(得分:0)
发布模型会有所帮助,但我想这是字段查找(https://docs.djangoproject.com/en/dev/ref/models/querysets/#field-lookups)。
尝试将代码更改为
ret = self.quote_tasks.filter(task_definition__document_task_type__exact='GENCNTR')
如果要在末尾使用[0]
,请不要忘记添加try-catch块(因为QuerySet可能为空)。