Django模板技术

                                     作者:尹正杰 

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.模板概述

1>.模板的作用

  如果使用react实现前端页面,其实Django就没有必须使用模板,它其实就是一个纯后台服务程序,接收请求,响应数据,前后端接口设计就可以是纯粹的Restful风格。

  模板的目的就是为了可视化,将数据按照一定布局格式输出,而不是为了数据处理,所以一般不会有复杂的处理逻辑。模板的引入实现了业务逻辑和显示格式的分离。这样,在开发中,就可以分工协作,页面开发完成页面布局设计,后台开发完成数据处理逻辑的实现。

  Python的模板引擎默认使用Django template language (DTL)构建。

2>.模板配置

在settings.py中,设置模板项目的路径:
  DIRS:
    列表,定义模板文件的搜索路径顺序。os.path.join(BASE_DIR, 'templates')即项目根目录下templates目录,请构建这个目录。
    BASE_DIR是项目根目录,os.path.join(BASE_DIR, 'templates')就是在manage.py这一层建立一个目录templates。这个路径就是以后默认找模板的地方。

  APP_DIRS:
    是否运行在每个已经安装的应用中查找模板。应用自己目录下有templates目录,如下图所示的user/templates。如果应用需要可分离、可重用,建议把模板放到应用目录下。
  
注意:
  这里必须给出DIRS,'APP_DIRS'为True,所以Django会搜索所有注册App的模板路径,但是还不能找到我们定义的index.html的话,会报错TemplateDoesNotExist

二.模板渲染

1>.模板页

2>.模板处理

3>.render快捷渲染函数

 

三.DTL语法

四.小试牛刀

Django模板技术的更多相关文章

  1. django模板系统基础

    模板系统基础Django模板是一个string文本,它用来分离一个文档的展现和数据 模板定义了placeholder和表示多种逻辑的tags来规定文档如何展现 通常模板用来输出HTML,但是Djang ...

  2. Django——模板层(template)(模板语法、自定义模板过滤器及标签、模板继承)

    前言:当我们想在页面上给客户端返回一个当前时间,一些初学者可能会很自然的想到用占位符,字符串拼接来达到我们想要的效果,但是这样做会有一个问题,HTML被直接硬编码在 Python代码之中. 1 2 3 ...

  3. django模板(一)

    模板(一) 实验简介 在前一章中,你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python 代码之中. def current_datetime(req ...

  4. django——模板层

    每一个Web框架都需要一种很便利的方法用于动态生成HTML页面. 最常见的做法是使用模板. 模板包含所需HTML页面的静态部分,以及一些特殊的模版语法,用于将动态内容插入静态部分. 说白了,模板层就是 ...

  5. 【Django模板进阶007】

    本节主要讲 Django模板中的循环,条件判断,常用的标签,过滤器的使用 列表,字典,类的实例的使用 循环:迭代显示列表,字典等中的内容 条件判断:判断是否显示该内容,比如判断是手机访问,还是电脑访问 ...

  6. django模板(template)

    模板层(template) 你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python代码之中. 1 2 3 4 def current_datetime ...

  7. Django模板层

    一:模板简介 二:模板语法值变量 三: 模板之过滤器 四: 模板之标签 五:自定义标签和过滤器   一:模板简介 def current_datetime(request): now=datetime ...

  8. Django模板层之templates

    一 模版简介 你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python代码之中. def current_datetime(request): now ...

  9. Django模板系统(非常详细)(后台数据如何展示在前台)

    前面的章节我们看到如何在视图中返回HTML,但是HTML是硬编码在Python代码中的这会导致几个问题:1,显然,任何页面的改动会牵扯到Python代码的改动网站的设计改动会比Python代码改动更频 ...

随机推荐

  1. 【CFGym102059G】Fascination Street(思维DP)

    点此看题面 大致题意: 有\(n\)个路灯,每个路灯有一定的建造费用,且建成后可照亮自身及周围距离为\(1\)的两个格子.你可以交换\(k\)次两个路灯的建造费用,求照亮所有格子的最小费用. 题意转换 ...

  2. java ++前缀

    public class Sample { public static void main(String[] args) { , num2 = ; , num4 = ; ++num1; System. ...

  3. ElasticSearch使用RestHighLevelClient进行搜索查询

    Elasticsearch Java API有四类client连接方式:TransportClient.  RestClient .Jest. Spring_Data_Elasticsearch.其中 ...

  4. .NET Core EF框架使用SQL server 2008数据库分页问题:Incorrect syntax near 'OFFSET'. Invalid usage of the option NEXT in the FETCH statement

    一. 问题 最近.Net Core程序部署到服务器,采用EF6.本地数据库是SQL server 2016,服务器数据库安装的是SQL server 2008 R2,在用到分页查询时报错如下: { & ...

  5. iphone 移动端操作记录

    iPhone和Safari浏览器的后退按钮操作,是直接载入缓存中的页面,不会加载js文件,不会执行ready,onload函数,但是加载html页面会跑pageshow事件,因此有回退动作需要重新加载 ...

  6. MySQL 5.7.26安装及配置--windows10系统下

    安装过程省略,下载包解压即可 一.配置my.ini在解压目录下,新建一个my.ini [mysql] default-character-set=utf8 [mysqld] port = 3306 b ...

  7. MYSQL思维导图(转载)

    图片来源:https://www.cnblogs.com/mutudou/p/11858477.html

  8. API管理之YApi实现前后端高度分离

    全手打原创,转载请标明出处:https://www.cnblogs.com/dreamsqin/p/11972789.html,多谢,=.=~ 背景描述   前后端分离已成为互联网项目开发的业界标准使 ...

  9. R数据挖掘 第三篇:聚类的评估(簇数确定和轮廓系数)和可视化

    在实际的聚类应用中,通常使用k-均值和k-中心化算法来进行聚类分析,这两种算法都需要输入簇数,为了保证聚类的质量,应该首先确定最佳的簇数,并使用轮廓系数来评估聚类的结果. 一,k-均值法确定最佳的簇数 ...

  10. thinkphp3.2 无法加载模块

    当使用thinkphp3.2时候 出现一个无法加载模块的错误的时候 不要慌张,只需要在根目录下的 index.php  加入一句话就可 define('BIND_MODULE','Home'); // ...