Использование dict_cursor в Django
Чтобы получить курсор в Django я делаю:
from django.db import connection
cursor = connection.cursor()
Как бы я получил курсор в Django, эквивалент -
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?