django转出一个变量

时间:2013-02-27 10:22:07

标签: django

在Django中我可以转储一个变量来查看视图中的内容(不使用命令行)吗?

例如:

device = mobile(request)
    print device
    abort

or 
 device = mobile(request)
 return HttpResponse(device)

2 个答案:

答案 0 :(得分:2)

有一个类似的问题:

Django debug display all variables of a page

您可以输入

assert False, locals()
在您的视图中

查看所有视图变量。或者使用模板中的{%debug%}模板标签来执行相同的操作。

答案 1 :(得分:1)

当您使用的钩子框架本身不适合直接调试时,写入文件通常是一种“转储”数据作为调试方法的万无一失的方法。

e.g。

device = mobile(request)
with open('path/to/debug_out.txt', 'w') as outfile:
    outfile.write(device)
abort

为方便起见,您可以将它放在某个调试助手模块中的预定义函数中。或者,您可以使用sys.excepthook在转发/重新提升之前自动将所有异常写入此文件。