djando模板----第一django模板应用
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模板应用的更多相关文章
- 转换器2:ThinkPhp模板转Django模板
前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...
- django模板语法
Django 模板语法 Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法 模板语法变量:{{ }}在Django模板中遍历复杂 ...
- Python学习---django模板语法180122
django模板语法[Template] 模版的组成: HTML代码+逻辑控制代码 <h1> {{ user_name }} </h1> 逻辑控制代码的组成: 1.变量: ...
- django之创建第3个项目:编写第一个模板文件
1.django结构 2.在站点blog下创建templates文件夹,专门用于存放模板文件 3.在templates文件夹下创建index.html文件 #index.html <!DOCTY ...
- Django(4)html模板继承、模板导入、分页实现
1.获取所有请求信息 导入模块:from django.core.handlers.wsgi import WSGIRequest request.environ:包含所有的请求信息,可以打印看一下, ...
- python django 模板
1 用两个大括号括起来的文字{{person_name}} 称为变量 2 被 大括号和面分号包围的文件({% if ordered_warranty %})是模板标签 3 过滤器是用管道符(|) 和U ...
- Django模板-分离的模板
上一篇Django模板-在视图中使用模板最后的问题,我们需要把数据和展现分离开. 你可能首先考虑把模板保存在文件系统的某个位置并用 Python 内建的文件操作函数来读取文件内容. 假设文件保存在 E ...
- Django模板-模板标签
接着Django模板-基础知识继续写模板相关知识. if标签 {% if %} 标签接受 and , or 或者 not 关键字来对多个变量做判断 ,或者对变量取反( not ). 但是不允许在同一个 ...
- Django模板-基础知识
上一篇中带参数的URLconf虽然可以做到传参动态显示内容,但是最终现实的内容还是硬编码到Python代码中的 def hours_ahead(request,phours): try: phours ...
随机推荐
- java中byte的范围计算
概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为“0”表示正数,最高位为“1”表示负数.正数补码为其本身:负数补码为其绝对值各位取反加1:例如:+21,其二进制表示形式是000101 ...
- vuetify使用时遇到的坑:默认颜色显示不了
原文链接: https://blog.csdn.net/weixin_44015248/article/details/86579777
- Java实习生面试题分享
1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别. Java语言提供了八种基本类型: 六种数字类型(四个整数型,两个浮点型) 字节型byte 8位 短整型short 16位 ...
- 【排序算法】冒泡排序(Bubble Sort)
一.简介 冒泡排序(Bubble Sort)也是一种简单直观的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换, ...
- 通用分页jsp页面显示
注:本章内容都是在上一篇文章 通用分页后台显示:https://www.cnblogs.com/ly-0919/p/11058942.html 的基础上进行改进,所以有许多的类都在上一篇, 带来不便 ...
- 重建道路 树形DP
重建道路 树形DP 给一棵树,问最少断多少边使得这棵树树最终只有\(p\)个节点 设计dp状态\(f[u][i][j]\)表示节点\(u\),到第\(i\)个儿子,使\(j\)个节点分离,但是不分离 ...
- Android工程的合并
http://www.xuanyusong.com/archives/3395 1.游戏包名( 类似 com.xx.xxx ) Android应用程序只能有一个包名,如果两个游戏包名一样,那么后者安装 ...
- Python数据类型解析(基础篇)
Python语言的类型 数字类型 字符串类型 元组类型 列表类型 文件类型 字典类型 1.数字类型 Python有三种数字类型:整数,浮点数,复数 Python中的整 ...
- mvn ssm 异常 org.springframework.beans.factory.BeanCreationException:Error creating bean with name 'multipartResolver'
解决方案: 添加 commons-fileupload-1.2.jar <!-- https://mvnrepository.com/artifact/commons-fileupload/co ...
- mac 安装 mysql 5.7
下载 https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下一步,经过一系列安装步骤后,会跳出一个这样的界面,请注意!!! 上面红框中是你 ...