为什么django会运行两次?

时间:2013-05-14 15:02:08

标签: django

每当我在print或django中的任何随机settings.py文件中放入(随机).py语句时,它都会被打印两次。为什么呢?

试试这个:

TEMPLATE_DIRS上设置值(在settings.py中)后,只需在其后添加一个print语句: print TEMPLATE_DIRS

您将获得两次打印模板目录。或者,如果您感觉过时了,只需在声明print "Hello World后立即添加TEMPLATE_DIRS,它就会打印两次。

要运行的命令:python manage.py runserver

1 个答案:

答案 0 :(得分:24)

它没有运行两次,它分支到2个进程,每个进程运行一次。

回答:why is init module in django project loaded twice

  

每个进程只应加载一次。我猜是的   manage.py forks,以及两个独立的进程。

an article.

如果您将其添加到settings.py

,请进行验证
import os
print(os.getpid())

它将打印出2个不同的进程ID号,表明它产生了2个进程。

您可以阅读有关分叉on wikipedia.

的更多信息

这似乎也是重复的:

django - settings.py seems to load multiple times?