2011-11-16 45 views
5

我正在更新一个django模型对象。当我给obj.save()拨打电话OperationalError: (2006, 'MySQL server has gone away')时,为每个属性设置了值。我非常想知道是什么导致了以下错误。我怎样才能得到的查询?当保存方法因上述错误而失败时,它不会记录查询。 有什么建议?提前致谢。我怎样才能得到.save()在Django的查询?

+0

[Django的工具栏(https://github.com/robhudson/django-debug-toolbar) – danihp

回答

9

您可以尝试

from django.db import connection 
connection.queries 

它会给你所有通过Django的执行查询的清单(包括.save())。为了让您的查询,你可以做,

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

不要忘记settings.DEBUG设置为True,查看查询 – dbf