django 模板语言入门详解
django 模板语言所解决的问题域:
1、动态生成html文件
2、是上这个模板语言用可用于生成任何形式的文本文件
从一个不用模板语言生成html的例子看模板语言的优点:
假设我要生成一个 “hello xxx”样子的页面、不用template语言时可以写出来的、以下是页面的效果图:

不用模板语言的情况下、python代码如下:
from django.shortcuts import render
from django.http import HttpResponse # Create your views here. def index(request):
html="""<!DOCTYPE html>
<html>
<head>
<title>Hello {0}</title>
</head> <body>
<p> Hello {0} </p>
</body>
</html>
"""
return HttpResponse(html.format('welson'))
1、html代码与python代码和在一起、这个还是个小的页面、一个大点的页面可能有几千行html代码、在这个混合的代码汤中找到自己要
改动的点、而且还不要改错、这个就比较考验一个“程序猿的基本修养”了。
2、现在的网站开发大多都是有明确分工的、前端程序猿主要是负责写页面、后台程序猿写相应的逻辑;对于上面的情况、如果一个前端
程序猿要改页面的样式、那它最好要懂点python;总的来说吧、这种format的方式不方便合作。
用模板语言让前端与后台松耦合每个人都做自己擅长的事:
1、前端只要把html经过一点点改动就可以了、为页面写一个静态文件、代码如下:
<!DOCTYPE html>
<html>
<head>
<title>Hello {{ name }}</title>
</head> <body>
<p> Hello {{ name }}</p>
</body>
</html>
2、后台引入前端提供的html文件、并传入对应的参数、就可以生成页面了
from django.shortcuts import render # Create your views here. def index(request):
return render(request,'app01/index.html',context={'name': 'welson'})
通过django的模板机制html与python就分开了

页面效果是一样的、但是内涵不同了。
----
django 模板语言入门详解的更多相关文章
- C#语言入门详解(002)
c# 所編寫的不同應用程序 Console.WriteLine("Hello World!"); ///console textBoxShowHellow.Text = " ...
- webpack入门详解
webpack入门详解(基于webpack 3.5.4 2017-8-22) webpack常用命令: webpack --display-error-details //执行打包 webpa ...
- Linq之旅:Linq入门详解(Linq to Objects)
示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...
- Scala 入门详解
Scala 入门详解 基本语法 Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的 Scala 程序是对象的集合,通过调用彼此的方法来实现消息传递.类,对象,方法,实例变 ...
- Linq之旅:Linq入门详解(Linq to Objects)【转】
http://www.cnblogs.com/heyuquan/p/Linq-to-Objects.html Linq之旅:Linq入门详解(Linq to Objects) 示例代码下载:Linq之 ...
- svg入门详解
一.svg是什么? SVG 意为可缩放矢量图形(Scalable Vector Graphics). SVG 是使用 XML 来描述二维图形和绘图程序的语言. SVG 图像在放大或改变尺寸的情况下其图 ...
- Linq之旅:Linq入门详解(Linq to Objects)(转)
http://www.cnblogs.com/heyuquan/p/Linq-to-Objects.html 示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细 ...
- vue2.x版本中computed和watch的使用入门详解-computed篇
前言 在基于vue框架的前端项目开发过程中,只要涉及到稍微复杂一点的业务,我们都会用到computed计算属性这个钩子函数,可以用于一些状态的结合处理和缓存的操作. 基础使用 在computed中,声 ...
- 6月15日 python学习总结 Django模板语言相关内容
Django模板语言相关内容 Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...
随机推荐
- Aerospike系列:8:集群宕机演练
1:初始的集群状态 2:关掉192.168.91.133:3000 3:再关掉192.168.91.135:3000 3:再关掉192.168.91.144:3000 5:恢复192.168.91.1 ...
- vue 去掉元素之间空格 preserveWhitespace
preserveWhitespace 说明参考:https://vue-loader.vuejs.org/zh/options.html#compiler options: { compilerOpt ...
- 单链表Java实现
近期在复习基本数据结构,本文是单链表的Java实现,包含对单链表的实现插入删除查找遍历等.最后还实现了单链表的逆置. 实现了多项式相加,多项式相乘. 原文章及完整源码在这里 http://binhua ...
- java sm4国密算法加密、解密
java sm4国密算法加密.解密 CreationTime--2018年7月5日09点20分 Author:Marydon 1.准备工作 所需jar包: bcprov-jdk15on-1.59. ...
- Yii2框架bootstrap样式理解
Yii2框架默认採用了bootstrap作为CSS风格,各种视图类组件都如此.之前一直採用默认风格,并在必要的时候加入或者改动一下class来达到目的.但在改版Yii1.1的orange项目时.发现之 ...
- JQuery动态给table添加、删除行 改进版
复制代码 代码如下: <html> <head> <title> </title> <script src="js/jquery-1.4 ...
- DLib压缩解压程序示例
/* 这是一个示例程序,使用了Dlib库的compress_stream和cmd_line_parser组件. 这个示例实现了一个简单实用的命令行压缩程序. 当使用-h选项时候,程序输出如下: 使用: ...
- windows下命令行终端使用rz上传文件参数详解
rz命令: (X) = option applies to XMODEM only (Y) = option applies to YMODEM only (Z) = option applies t ...
- 使用PowerDesigner生成SQL语句
0.我使用的PowerDedigner的版本如下: 1.tools>>Resource>>DBMS,然后选中你的数据库版本,双击或点击左上角的properties. 2.再选择 ...
- 深入浅出DOM基础——《DOM探索之基础详解篇》学习笔记
来源于:https://github.com/jawil/blog/issues/9 之前通过深入学习DOM的相关知识,看了慕课网DOM探索之基础详解篇这个视频(在最近看第三遍的时候,准备记录一点东西 ...