djangoでテンプレートが読み込まれない...settings.pyのTEMPLATESのDIRSに追記して解決

新規で作ったportfolioっていうアプリケーションのテンプレートが正しく読み込まれない...パスの通し方がよくわからないので下記のようにsettings.pyのTEMPLATESのDIRSに「os.path.join(BASE_DIR, ‘portfolio/templates’)」と追記しました。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
                os.path.join(BASE_DIR, 'templates'),
                os.path.join(BASE_DIR, 'portfolio/templates'),
        ],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

これが、正しいやり方なのかわからないが、とりあえずパスが通りました。

テンプレートのパスをもとのsettings.pyから読み取ると、意図せず別のアプリケーションのテンプレートが読み込まれるので、アプリケーションごとにsettings.pyを作って、設定の移譲ができるんじゃないかな?urls.pyみたいに...と思っているが、情報が少なくてよく分かっていない。

アプリケーションを追加した時点で追記されてもよくない?と思った次第です。

コメント

タイトルとURLをコピーしました