gpt4 book ai didi

django - 告诉Django搜索应用的模板子文件夹

转载 作者:行者123 更新时间:2023-12-04 13:00:35 27 4
gpt4 key购买 nike

我的django应用程序上的模板具有以下文件夹结构:

templates/
app/
model1/
model1_form.html
model2/
model2_form.html

假设我正在使用model1和通用ListView,现在它仅在template/app/model1_form.html中搜索。无论如何,我能告诉django他也应该搜索该应用程序/子文件夹吗?我不想手动设置模板名称和路径( template_name="templates/app/model1/model1_form.html")。

在settings.py我有:
import os.path
BASE_PATH = os.path.dirname(os.path.dirname(__file__))
TEMPLATE_DIRS = (
BASE_PATH+'/templates/',
)

这是我的看法:
class HousesListView(ListView):
model = House
context_object_name = "house_list"

提前致谢!

最佳答案

您需要将django.template.loaders.app_directories.Loader添加到TEMPLATE_LOADERS(如果尚未添加)。

TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
)

然后,更改文件夹结构,以使app目录中具有"template"文件夹:
- <project_root>
- app
- templates
- model1
- model2

或为模型正确命名,以免模型与其他应用程序名称发生意外冲突:
- <project_root>
- app
- templates
- app
- model1
- model2

关于django - 告诉Django搜索应用的模板子文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10386257/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com