0

在本教程的帮助下,我使用 Django 迈出了第一步,但我不明白我的操作的结果。

当我修改我的 python 脚本并刷新我的页面时,就像有一个缓存来存储旧版本的脚本。

示例我有这个错误:

global name 'Poll' is not defined
Exception Location: /var/www/pythonRoot/scrapfull/polls/views.py in index, line 5

Traceback:
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 111.  response = callback(request, *callback_args, **callback_kwargs)
File "/var/www/pythonRoot/scrapfull/polls/views.py" in index 5. return HttpResponse("Hello, world. Vous etes a l'index des sondages.")

因此,我在第 5 行看到关于我的 Poll 模型的错误,但在此测试脚本中没有调用任何 Poll 操作。但确实之前,第 5 行是 latest_poll_list = Poll.objects.all().order_by('-pub_date')[:5]'

为什么我刷新的时候没有当前保存的脚本的解释?此外,当我疯狂地点击“刷新”时,我可以看到一些随机结果。为什么?

我的配置:Apache + mod_wsgi

4

1 回答 1

1

当然,出于性能原因,有一个缓存mod_wsgi 将您的脚本保存在内存中,而不是在每次有人访问您的应用程序时重新读取它们。

如果您在守护程序模式下运行 mod_wsgi,告诉 mod_wsgi 重新加载源的最简单方法是touching 您的.wsgi文件:

$ touch path/to/your/app.wsgi

否则,您将不得不重新启动 Apache。

(另见此


我建议使用 Django 的内置网络服务器进行开发,因为它会自动重新加载您的脚本。

于 2013-06-09T17:01:19.560 回答