我正在尝试从另一个应用程序渲染为模板,但是不确定如何导入,或者是否应该使用模板导入?
结构是
project-> main app-> templates-> pages-> home.html account -> current app-> views.py
我的views.py文件位于当前应用程序中,并试图访问主应用程序中的模板(在pages子文件夹中)。
我将如何渲染它:
def temp_view(request): .... return render(request, "home.html",context)
DhiaTN.. 5
最初,您应该在settings.py中使用类似以下内容配置模板的静态路径
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',
'django.template.context_processors.i18n',
],
},
},
]
APP_DIRS=True
意味着Django将根据您的情况在每个应用程序目录中查找模板,main_app/
并且current_app/
:
您只需提及将模板路径视为根路径的模板路径,就这么简单:
def temp_view(request): .... return render(request, "pages/home.html",context)
Django将在main_app/
目录下查找该文件 pages/home.html
最初,您应该在settings.py中使用类似以下内容配置模板的静态路径
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',
'django.template.context_processors.i18n',
],
},
},
]
APP_DIRS=True
意味着Django将根据您的情况在每个应用程序目录中查找模板,main_app/
并且current_app/
:
您只需提及将模板路径视为根路径的模板路径,就这么简单:
def temp_view(request): .... return render(request, "pages/home.html",context)
Django将在main_app/
目录下查找该文件 pages/home.html