Django框架模板位置(默认&自定义)

1、默认模板位置

如果当前项目名称为learning_log

在该项目下,有一个应用,名称为learning_logs

那么Django默认的'模板位置'是:

.\learning_log\learning_logs\templates\learning_logs

2、自定义模板位置

修改项目learning_log的settings.py文件。

未修改时,该文件的TEMPLATES段如下:

复制代码
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',
            ],
        },
    },
]

如果自定义的模板路径为:.\learning_log\templates,需要做如下修改

复制代码
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates'), ],
        'APP_DIRS': False,
        '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',
            ],
        },
    },
]

通过修改'DIRS'确定新的模板目录,通过将'APP_DIRS'改为False,关闭Django按默认方式寻找模板文件。

那么Django自定义的'模板位置'是:

.\learning_log\templates

注意,在修改'DIRS'使用了os.path.join用来生成路径,所以需要在settings.py文件中引入os,即:import os

相关推荐
canonical_entropy12 分钟前
最小变更成本 vs 最小信息表达:第一性原理的比较
后端
渣哥12 分钟前
代理选错,性能和功能全翻车!Spring AOP 的默认技术别再搞混
javascript·后端·面试
如竟没有火炬27 分钟前
全排列——交换的思想
开发语言·数据结构·python·算法·leetcode·深度优先
间彧28 分钟前
Java泛型详解与项目实战
后端
间彧38 分钟前
PECS原则在Java集合框架中的具体实现有哪些?举例说明
后端
间彧40 分钟前
Java 泛型擦除详解和项目实战
后端
间彧43 分钟前
在自定义泛型类时,如何正确应用PECS原则来设计API?
后端
间彧44 分钟前
能否详细解释PECS原则及其在项目中的实际应用场景?
后端
机器瓦力44 分钟前
Trae使用:重构一个项目
python·ai编程