2011-11-16 10 views
5

Sto aggiornando un oggetto modello django. Dopo aver impostato il valore per ogni attributo, quando chiamo obj.save() mi ha dato OperationalError: (2006, 'MySQL server has gone away'). Sono disperato di sapere che cosa sta causando il seguente errore. Come posso ottenere la query ?? Come quando il metodo di salvataggio non riesce a causa dell'errore sopra riportato, non registra la query. Qualche suggerimento ?? Grazie in anticipo.Come posso ottenere query per .save() in django?

+0

[Django barra degli strumenti] (https://github.com/robhudson/django-debug-toolbar) – danihp

risposta

9

Si può provare

from django.db import connection 
connection.queries 

che vi darà l'elenco di tutte le query che eseguite attraverso Django (tra cui .save()). Per ottenere la query che si può fare,

try: 
    modelObj.save() 
except OperationalError: 
    from django.db import connection 
    print connection.queries[-1] 
+2

Non dimenticare di impostare settings.DEBUG a True per visualizzare le query – dbf

Problemi correlati