要在 django 中获取光标,我会这样做:
from django.db import connection
cursor = connection.cursor()
我如何在 django 中获得一个 dict 光标,相当于 -
import MySQLdb
connection = (establish connection)
dict_cursor = connection.cursor(MySQLdb.cursors.DictCursor)
有没有办法在 django 中做到这一点?当我尝试时,cursor = connection.cursor(MySQLdb.cursors.DictCursor)
我得到了一个Exception Value: cursor() takes exactly 1 argument (2 given)
. 还是我需要直接连接python-mysql驱动?
django 文档建议使用dictfetchall
:
def dictfetchall(cursor):
"Returns all rows from a cursor as a dict"
desc = cursor.description
return [
dict(zip([col[0] for col in desc], row))
for row in cursor.fetchall()
]
使用它和创建 dict_cursor 之间有性能差异吗?