Django中Settings中Templates的路径设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
## 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的目录下面的,是项目中或者说项目中所有的应用公用的一些模板

如果希望templates只给某一个app使用,可以这样设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
## 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',
            ],
        },
    },
]

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

总结来说说: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路径问题。

本文转自 曾哥最爱 51CTO博客,原文链接:http://blog.51cto.com/zengestudy/1901542,如需转载请自行联系原作者

django使用templates模板相关推荐

  1. python后台架构Django教程——templates模板

    全栈工程师开发手册 (作者:栾鹏) 本文衔接至python后台架构Django开发全解. 有其他问题请先阅读:http://blog.csdn.net/luanpeng825485697/articl ...

  2. Django之templates模板

    模板的使用 1.如何使用模板 在manage.py的同级文件夹中创建templates 在setting.py的文件中把第58行'DIRS': [ ],改成'DIRS': [os.path.join( ...

  3. Django学习系列之五:Django 的模板的render替换render_to_string用法及templates模板查找路径顺序

    Django学习系列之五:Django 的模板的render替换render_to_string用法及templates模板查找路径顺序 1.Django 的模板的render替换render_to_ ...

  4. django html过滤,django templates模板过滤器过滤掉字符串含有的html标签

    django templates模板过滤器过滤掉字符串含有的html标签 在template用法:{{ myvar|striptags }} 如果myvar的字符串是"吾爱孟夫子,风流天下闻 ...

  5. Django 笔记4 -- 模板

    Django 笔记4 – 模板 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Django官 ...

  6. Django框架(23.Django中的模板的标签、变量、过滤器和注释)

    模板 作为Web框架,Django提供了模板,用于编写html代码,还可以嵌入模板代码更快更方便的完成页面开发,再通过在视图中渲染模板,将生成最终的html字符串返回给客户端浏览器.模版致力于表达外观 ...

  7. django配置templates、static、media和连接mysql数据库

    1.模板文件 # =======templates配置======= if os.path.exists(os.path.join(BASE_DIR, 'templates')) is False:o ...

  8. Python测试开发django5.templates模板变量传参

    上一篇,我们学习了Python测试开发django4.templates模板配置 templates模板中html文件是一个静态页面,写四的,如果有时我们想动态的传入一些不同的参数,想实现在一个固定的 ...

  9. Python测试开发django4.templates模板配置

    [上一篇]我们讲了Python测试开发django3.视图和URL配置 今天详细介绍下 Django 模板的应用,模板是一个文本,用于分离文档的表现形式和内容. 我们已经知道创建项目用django-a ...

最新文章

  1. ETC核心技术团队CTO空降上海,引领高校区块链技术风潮
  2. oracle查sysdate,Oracle 日期查询语句小结
  3. 用C++写一个简单的服务器和客户端
  4. 计算机联锁仿真软件设计,一种基于LabVIEW的计算机联锁仿真系统的制作方法
  5. java进阶08 GUI图形界面
  6. 对于windows消息机制的体会和理解小纪
  7. 动态切换父元素隐藏和显示里面的子元素的动画会再一次执行吗?
  8. 计算机网络技术专业的规划,计算机网络技术专业建设规划
  9. SLAM GMapping(8)重采样
  10. 神码与SUSE共促Unix向x86+Linux迁移
  11. keepalived 多个应用_Keepalived高可用软件概述
  12. RHEL4As RAC手记
  13. 呜呜怎么才有下载的积分
  14. JavaScript服务器端高级编程(Array.indexOf()和lastIndexOf()方法)
  15. 要有多勇敢才敢对回忆念念不忘,还是喜欢流眼泪。学会成长坚强,相互理解而不是责怪。我安静点,我不哭了~...
  16. BM3D 算法原理详细解析 按过程步骤讲解(附C++实现代码)
  17. 古代的人才选拔,哪种制度更好?
  18. PHP初中高级学习在线文档下载
  19. 推荐(笔记软件、日程安排软件)
  20. 安装nginx遇到C compiler cc is not fount问题

热门文章

  1. sql优化之:深入浅出理解索引(系列二)(讲解非常透彻)
  2. 卷进大厂系列之LeetCode刷题笔记:移除元素(简单)
  3. Spark源码阅读02-Spark核心原理之监控管理
  4. Ignite与Spark集成时,ClassNotFoundException问题解决
  5. linux下初步实现Keepalived+Nginx高可用
  6. 在wamp 2.0环境下面安装Zend Optimizer的方法
  7. mysql主从复制错误sql-running no
  8. 操作文件方法简单总结(File,Directory,StreamReader,StreamWrite ) - Zery-zhang
  9. Git 使用规范流程
  10. SSH框架搭建 笔记 (含spring注解驱动)