Django的Settings中Templates的路径设置

摘要:
#########################总结来说说:BASE_DIR是指mysite项目的绝对路径。'DIRS':[os.path.join]是指到BASE_DIR/templates文件夹中去取模板'DIRS':[os.path.join]是指导BASE_DIR/app1/templates文件夹中去取模板一般来说,应该设置'DIRS':[os.path.join],公用的templates需要指定。app1专用的templates,放在app1/templates下,可以不需指定。因为在app1.views中若要指定一个专用模板,只要直接写‘app1_index.html’,Django服务器会在views文件所在的当前层中找到templates,从而找到模板'app1_index.html'.指定公用的templates路径,所有apps都可以调用,方便快捷。app专用的templates不需要指定,这样当要复用这个app的时候,不需要考虑templates路径问题。
## mysite/mysite/settings.py
## mysite是项目名
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], # 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', ], }, }, ]

这个templates文件夹是放在project的目录下面的,是项目中或者说项目中所有的应用公用的一些模板

## mysite/mysite/settings.py
## mysite/app1/
## mysite是项目名字,app1是应用名字
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'app1/templates')], ## 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', ], }, }, ]
这个templates是在项目下面的应用app1文件夹里面,里面是app1这个应用用到的专用模板。

#########################

总结来说说:BASE_DIR是指mysite项目的绝对路径。

'DIRS': [os.path.join(BASE_DIR, 'templates')]  是指到  BASE_DIR/templates文件夹中去取模板
'DIRS': [os.path.join(BASE_DIR, 'app1/templates')] 是指导  BASE_DIR/app1/templates文件夹中去取模板
一般来说,应该设置'DIRS': [os.path.join(BASE_DIR, 'templates')],公用的templates需要指定。
app1专用的templates,放在app1/templates下,可以不需指定。因为在app1.views中若要指定一个专用模板,只要直接写‘app1_index.html’,Django服务器会在views文件所在的当前层(/app1)中找到templates,从而找到模板'app1_index.html'.
指定公用的templates路径,所有apps都可以调用,方便快捷。
app专用的templates不需要指定,这样当要复用这个app的时候,不需要考虑templates路径问题。

免责声明:文章转载自《Django的Settings中Templates的路径设置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle存储过程java 调用iBatis.Net(4):DataMapper API下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

应用程序框架实战三十四:数据传输对象(DTO)介绍及各类型实体比较

本文将介绍DDD分层架构中广泛使用的数据传输对象Dto,并且与领域实体Entity,查询实体QueryObject,视图实体ViewModel等几种实体进行比较。 领域实体为何不能一统江湖? 当你阅读我或其它博主提供的示例代码时,会发现几种类型的实体,这几种实体初步看上去区别不大,只是名称不同,特别在这些示例非常简单的情况下更是如此。你可能会疑惑为何要搞得...

在Django / DRF中正确处理日期时间/时区

我正在尝试为我的网络应用程序进行正确的日期处理设置.我有一个看起来像这样的模型 class Entity(models.Model): name = models.CharField(max_length=255) date = models.DateTimeField() 用户可以向我的DRF端点/ api / v1 / entity /...

Android国行手机使用Google Play Store

要使用google提供的服务,必须在手机上关联google账户。 安装GoogleServicesFramework.apk,因为这是所有google服务的基础。 安装GooglePlay.apk,就是google商店了。当你安装完第一次打开的时候,它会提示你关联一个google账户,于是输入一个账户之后进行连接谷歌服务器,不出意外的话会提示"无法与服...

软件测试第一周学习总结

一、什么是软件测试       软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。   二、软件测试的测试原...

Django登录与注销

一:Django中自带着登录,验证功能不用自己再去写登录功能。 1、从相应模块导入组件功能 from django.contrib.auth import authenticate,login 2、从request中拿到用户名密码,验证,验证通过获取到用户对象,不通过为None。 username = request.POST.get("u...

解决win10分辨率过高导致某些软件显示小的办法

右键->属性->兼容性->更改所有用户的设置->更改高DPI设置->高DPI缩放替代->勾选替代高DPI的缩放行为指定系统(在应用程序,系统,系统增强里选系统) 参考链接: https://blog.csdn.net/weixin_41391865/article/details/82729757...