Настройки в Django повторяются при запуске сервера

Я не знаю, почему мое приложение django запускает settings/base.py 2 раза. Я думаю, что это замедлит работу моего приложения
. В моем settings/base.py я напечатал

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

вывод:

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

Вот мой файл настроек:

    ├── settings <br />
    |     ├──__init__.py <br />
    |     ├──base.py <br />
    |     ├──dev.py <br />
    |     ├──prod.py <br />

и мой 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, насколько я знаю.

Вернуться на верх