Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么.query()函数不能处理Django ORM查询?_Python_Django_Database - Fatal编程技术网

Python 为什么.query()函数不能处理Django ORM查询?

Python 为什么.query()函数不能处理Django ORM查询?,python,django,database,Python,Django,Database,我已经知道,使用.query.\uuu str\uuu(),我们可以从Django ORM查询中获得sql等价查询 e、 g:Employees.objects.filter(id=int(id)).query.\uuu str\uuu() 以上代码运行良好&我能够得到与sql等价的查询 但当我在下面的查询中使用相同的方法时,我得到的错误如下所示 Employees.objects.filter(id = int(id)).first().query.__str__() AttributeErr

我已经知道,使用
.query.\uuu str\uuu()
,我们可以从Django ORM查询中获得sql等价查询

e、 g:
Employees.objects.filter(id=int(id)).query.\uuu str\uuu()

以上代码运行良好&我能够得到与sql等价的查询 但当我在下面的查询中使用相同的方法时,我得到的错误如下所示

Employees.objects.filter(id = int(id)).first().query.__str__()
AttributeError: 'Employees' object has no attribute 'query'
为什么我现在会出错,有什么建议吗

不返回
QuerySet
,它返回一个模型对象。该查询得到了热切的评价

您可以检查Django使用以下工具进行的最后一次查询:

from django.db import connection
print(connection.queries[-1:])
从django.db导入连接
打印(连接.查询[-1:])
也就是说,本质上
some\u queryset.first()
通常与
some\u queryset
是相同的查询,只是它会限制查询集

注意:请不要使用
\uuuu str\uuuuu
,您可以使用
str(my\u queryset.query)
,或者只使用
打印(my\u queryset.query)


谢谢以上解释澄清了我的疑问,解决了我的问题!