Django 中的设置 运行 在 运行 服务器时重复

Settings in Django run repeat when runserver

不知道为什么我的django app 运行 settings/base.py 2次。我认为这会使我的应用程序变慢
在我的 settings/base.py 中打印了

print('this is base_dir')
print(BASE_DIR)

输出为:

this is base_dir
F:.Django\BLOG_PROJECT\src_blog
this is base_dir
F:.Django\BLOG_PROJECT\src_blog

这是我的设置文件:

    ├── settings 
    |     ├──__init__.py 
    |     ├──base.py 
    |     ├──dev.py 
    |     ├──prod.py

我的 settings\__init__.py 文件包含:

import os
from dotenv import load_dotenv
load_dotenv()

if os.environ['ENV_SETTING'] =='prod':
   from .prod import *
else:
   from .dev import *

from .base import *

这可能与 Django 中旧的双线程产生有关。 Django 的设置方式在一开始会产生两个线程,所以一个进程在那里处理请求,另一个进程监视您是否更改了任何代码,以便它可以重新产生第一个线程。

如果在settings.py

中打印以下内容
import os
print(os.getpid())

您会看到它打印了 2 个不同的值。据我所知,这是标准的 django 行为。