Django TEMPLATEDOESNOTEXIST;多个设置文件

时间:2018-04-05 00:29:20

标签: django docker settings

我正在尝试使用Docker在Django中实现多个设置文件。

我有一个设置包,如下所示:

> settings
   __init__.py
   base.py
   testing.py

我使用.yml中的以下命令运行docker-compose:

command: python manage.py runserver 0.0.0.0:8080 --settings=mysite.settings.testing

manage.py文件更新如下:

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings.testing")

我的testing.py现在只包含以下内容:

from .base import *

我运行dc-up命令,Django容器启动没有问题。但是,当我尝试加载网页时,它会返回TEMPLATEDOESNOTEXIST错误。

我已尝试将.testing替换为.base且错误相同。

我知道它与设置包相关,因为如果我切换回单个settings.py文件,则没有错误。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

大约是由错误的模板路径设置引起的问题(在我的情况下,模板设置如下所示):

     BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

    'DIRS': [os.path.join(BASE_DIR, 'templates')]

我将其修复如下:

     BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))