Usando dict_cursor en django
Para obtener un cursor en django hago:
from django.db import connection
cursor = connection.cursor()
¿Cómo obtendría un cursor dict en django, el equivalente de -
import MySQLdb
connection = (establish connection)
dict_cursor = connection.cursor(MySQLdb.cursors.DictCursor)
¿Hay alguna manera de hacer esto en django? Cuando lo intentecursor = connection.cursor(MySQLdb.cursors.DictCursor)
Conseguí unException Value: cursor() takes exactly 1 argument (2 given)
. ¿O necesito conectarme directamente con el controlador python-mysql?
Los documentos django sugieren usardictfetchall
:
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()
]
¿Hay una diferencia de rendimiento entre usar esto y crear un dict_cursor?