如何将views.py中的列表打印到控制台?

时间:2015-06-29 19:41:58

标签: python django

我是Django的新手,并且我正在尝试调试一段代码,该代码将空列表返回给模板,即使它应该返回包含项目的列表。有没有办法从views.py中将列表打印到控制台以进行调试?我显然无法运行python views.py,因为我想要的信息存储在SQLite数据库中,但是如果我尝试在我正在使用的视图中包含print语句,那么当我刷新页面(和服务器联系我的代码)。有解决方案吗?我环顾四周,找不到任何东西。

3 个答案:

答案 0 :(得分:4)

首先,您从未使用python views.py

运行Django代码

但是,您可以在控制台中看到打开的每个HTTP请求,以启动本地Django Web服务器。

如果您这样做,例如在index()查看功能print中,您应该可以直接在控制台中查看输出:

def index(request):
   a_list = [1,2,3,4]
   print a_list
   return render(request, 'index.html', {'list':a_list})

询问您是否不清楚某些事情;)

答案 1 :(得分:3)

如果您使用 runserver 命令,您将在该命令提示符中看到print-statements的输出,例如实时日志记录。

答案 2 :(得分:2)

您可以在视图函数中包含调试行。你的views.py看起来像:

import pdb

def myview(request):
    ...
    pdb.set_trace()
    ...

运行python manage.py runserver并在浏览器中查询相应的网址时,您的命令行将停在pdb.set_trace()上。然后,您可以探索并测试所需的一切。