簡體   English   中英

Django urls 找不到帶有 HTML 文件的模板

[英]Django urls can't find templates with HTML file

我正在嘗試在我的 Django ToDo 應用程序中創建視圖。 但是有一個 TemplateDoesNotExist 錯誤。 我正在尋找解決方案,但它仍然無法正常工作。

這是我在主文件夾中的 urls.py

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('todoapp_api.urls')),
]

然后我的應用程序文件夾是“todoapp_api” 我有 urls.py

from django.urls import path
from . import views


urlpatterns = [
    path('', views.app, name='app'),
]

我的 views.py 看起來像這樣

from django.shortcuts import render
from django.http import HttpResponse


def app(request):
    return render(request, 'todoapp_api/app.html')

您有兩個選擇: 目錄結構 1:todoapp_ap/templates/todoapp_api/app.html

或遵循目錄結構 2: 1. 在您的根目錄中創建一個全局模板文件夾。 2. 在其中創建 todoapp_api 文件夾並放置您想要的任何模板文件。

在你的 settings.py 中,替換這個

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        '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',
            ],
        },
    },
]

這樣 :

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
            os.path.join(BASE_DIR, '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',
            ],
        },
    },
]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM