Django模板

我们已经知道,模板函数的函数的返回值就是返回给客户端的数据,但如果返回数据很复杂,如果一个非常大的html页面,直接将页面代码固化在python脚本文件中是不合适的,当然

也可以将html页面代码放到一个文件中,然后通过open函数或其他API读取文件内容。这是一种非常好的方式,不过这些功能已经被django封装了。

djaogo模板就是django内建的模板,无须单独安装。

django模板就是HTML静态页(可能包含CSS、JS等前端代码)和标签的组合。也就是说,Django模板与HTML静态页面非常相似,这是除了静态部分,还有动态部分,这一部分成为标签,

django模板文件是通过路由函数返回给客户端的,所以在返回之前,django模板引擎会先将模板中所有的标签替换成静态页面的内容(主要是HTML代码),也就是说,django模板中的

标签在浏览器中是看不到的,我们看到的都是这些标签转换而成的html代码。只有web服务端才能看到这些标签,并进行相应的替换。

djgango模板文件默认都放在template目录中。使用pycharm创建django过程时会自动创建template目录。除了标签外,django模板中的其他部分和html页面没有什么区别。所有的标签

都使用{{...}}扩起来,一般{{...}} 内是一个标识符 如 {{name}},方便web服务端替换标签。

返回django模板文件需要使用django.shortcuts模块中的render函数,该函数需要指定三个参数,第1个参数是request,第2个参数是django模板文件名(如hello.html),第3个参数

是一个字典类型,用于存储标签需要替换的值。字典的key就是{{...}}中的标识符。

本例在template目录中建立一个简单的django模板文件(hello.html),然后在工程的Firstdjango目录中创建view.py脚本文件编写一个名为hello的路由函数,用于返回hello.html。

1、首先建立工程,建立工程请参照:https://www.cnblogs.com/effortsing/p/10394511.html

2、在template目录中建立一个简单的django模板文件(hello.html),然后在hello.html文件中添加如下内容:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hello</title>
</head>
<body>
<h1>{{ hello }}</h1>
</body>
</html> 3、在工程的Firstdjango目录中建立一个view.py脚本文件,然后在view.py文件中添加如下内容: from django.shortcuts import render
def hello(request):
values={}
#设置替换标签的值
values['hello']='hello world'
#使用render函数返回hello.html文件
return render(request,'hello.html',values) 4、然后在Firstdjango目录中找到urls.py脚本文件,用下面的代码代替urls.py脚本里面的内容: from django.conf.urls import url
from .import view
urlpatterns=[
#下面代码是本例添加的路由方法与正则表达式的映射
url(r'^hello$',view.hello),
] 5、启动django 如果已经启动就不需要再次启动,django会自动加载修改的内容 6、浏览器访问 http://127.0.0.1:8000/hello
hello world 7、创建上面hello.html、view.py脚本文件位置如下图所示:


djando模板----第一django模板应用的更多相关文章

  1. 转换器2:ThinkPhp模板转Django模板

    前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...

  2. django模板语法

    Django 模板语法 Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }}在Django模板中遍历复杂 ...

  3. Python学习---django模板语法180122

    django模板语法[Template] 模版的组成:  HTML代码+逻辑控制代码  <h1> {{ user_name }} </h1> 逻辑控制代码的组成: 1.变量: ...

  4. django之创建第3个项目:编写第一个模板文件

    1.django结构 2.在站点blog下创建templates文件夹,专门用于存放模板文件 3.在templates文件夹下创建index.html文件 #index.html <!DOCTY ...

  5. Django(4)html模板继承、模板导入、分页实现

    1.获取所有请求信息 导入模块:from django.core.handlers.wsgi import WSGIRequest request.environ:包含所有的请求信息,可以打印看一下, ...

  6. python django 模板

    1 用两个大括号括起来的文字{{person_name}} 称为变量 2 被 大括号和面分号包围的文件({% if ordered_warranty %})是模板标签 3 过滤器是用管道符(|) 和U ...

  7. Django模板-分离的模板

    上一篇Django模板-在视图中使用模板最后的问题,我们需要把数据和展现分离开. 你可能首先考虑把模板保存在文件系统的某个位置并用 Python 内建的文件操作函数来读取文件内容. 假设文件保存在 E ...

  8. Django模板-模板标签

    接着Django模板-基础知识继续写模板相关知识. if标签 {% if %} 标签接受 and , or 或者 not 关键字来对多个变量做判断 ,或者对变量取反( not ). 但是不允许在同一个 ...

  9. Django模板-基础知识

    上一篇中带参数的URLconf虽然可以做到传参动态显示内容,但是最终现实的内容还是硬编码到Python代码中的 def hours_ahead(request,phours): try: phours ...

随机推荐

  1. Jfinal undertow本地运行加载静态文件

    undertow部署文档中可配置静态资源也可以添加磁盘目录作为项目中得静态文件访问 undertow.resourcePath = src/main/webapp, D:/static 这样配置就可以 ...

  2. DYNAMIC LINK LIBRARY - DLL

    https://www.tenouk.com/ModuleBB.html MODULE BB DYNAMIC LINK LIBRARY - DLL Part 1: STORY What do we h ...

  3. Mac OS终端利器iTerm2(完美替代bash)

    iTerm2 iTerm一个为Mac OS X编写的,功能齐全的终端仿真程序:目标是在为用户提供OS X下最佳的命令行体验,iTerm 2有很多能够提升效率的实用功能.比如说窗口分割.热键窗口.智能搜 ...

  4. Luogu P4198 楼房重建 (李超线段树)

    题目 传送门 题解 首先转化成到(0,0)(0,0)(0,0)的斜率. 那么就是求多少个点是前缀最大值. 做法是线段树,用gao(i,x)gao(i,x)gao(i,x)表示在iii区间内,之前最大值 ...

  5. [CSS] Conditionally Assign Style to a Parent Element with Focus-Within Pseudo-class

    Use the focus-within pseudo-class to conditionally assign styling to a parent element when its child ...

  6. Codeforces Round #555 (Div. 3) C1,C2【补题】

    D1:思路:L,R指针移动,每次选最小的即可. #include<bits/stdc++.h> using namespace std; #define int long long #de ...

  7. File类的createNewFile()和mkdirs() mkdir()

    createNewFile文件不存在则创建,存在则不创建并返回false,文件路径必须存在才可创建路径下的文件(注意它只能创建文件,即如果你给了/storage/emulated/0/hello/sn ...

  8. iptables防火墙--------基本操作

    查看规则 查看filter表中的规则 $ iptables -t filter -L 使用-t选项,指定要操作的表.使用-L 选项,查看-t选项对应表的规则,-L 选项的意思是,列出规则. ps : ...

  9. python一些实用的小工具

    1  搭一个简易的本地局域网  python -m http.server 2 获取当前目录下的所有文件名 3 进度条效果 import sys,time for i in range(50): sy ...

  10. java 对txt文件读写(已经封装好)

    读文件: public static String readTxt(String txtPath) { File file = new File(txtPath); if(file.isFile() ...