Django框架模板文件使用及模板文件加载顺序分析


Posted in Python onMay 23, 2019

本文实例讲述了Django框架模板文件使用及模板文件加载顺序。分享给大家供大家参考,具体如下:

模板功能

产生html,控制页面上产生的内容。模板文件不仅仅是一个html文件。

模板文件包含两部分内容:

1.静态文件:css,js,html

2.动态内容:用于动态的去产生一些网页内容,通过模板语言产生

模板文件的使用

通常是在视图函数中使用模板产生html内容返回给客户端

a,加载模板文件 loader.get_template

获取模板文件的内容,产生一个模板对象

b,定义模板上下文 RequestContext

给模板文件传递数据

c,模板文件渲染产生的html页面内容 render

用传递的数据替换相应的变量,产生一个替换后的表中html内容

from django.shortcuts import render
from django.template import loader,RequestContext
from django.http import HttpResponse
# Create your views here.
def my_render(request,template_path,context={}):
  # 1.加载模板文件,获取一个模板对象
  temp = loader.get_template(template_path)
  # 2.定义模板上下文,给模板传递数据
  context = RequestContext(request, context)
  # 3.模板渲染,产生一个替换后的html内容
  res_html = temp.render(context)
  # 4.返回应答
  return HttpResponse(res_html)
# /index
def index(request):
  # return my_render(request,'booktest/index.html') 这是自己封装的render
  # 其实Django已经封装好了,可以直接使用
  return render(request,'booktest/index.html')

模板文件的加载顺序

Django框架模板文件使用及模板文件加载顺序分析

1.首先去配置的模板目录下找模板文件

2.去INSTALL_APPS下面的每个应用去找模板文件,前提是应用中必须有templates文件夹

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
python多线程编程方式分析示例详解
Dec 06 Python
python中mechanize库的简单使用示例
Jan 10 Python
python实现12306火车票查询器
Apr 20 Python
浅谈python内置变量-reversed(seq)
Jun 21 Python
Python使用文件锁实现进程间同步功能【基于fcntl模块】
Oct 16 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
Mar 22 Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
Dec 27 Python
python初步实现word2vec操作
Jun 09 Python
python实现扫雷游戏的示例
Oct 20 Python
python绘图模块之利用turtle画图
Feb 12 Python
Python用tkinter实现自定义记事本的方法详解
Mar 31 Python
Django框架登录加上验证码校验实现验证功能示例
May 23 #Python
python图形工具turtle绘制国际象棋棋盘
May 23 #Python
python os模块简单应用示例
May 23 #Python
python使用turtle绘制国际象棋棋盘
May 23 #Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 #Python
Python3.8中使用f-strings调试
May 22 #Python
总结Python图形用户界面和游戏开发知识点
May 22 #Python
You might like
php stream_get_meta_data返回值
2013/09/29 PHP
php使用parse_url和parse_str解析URL
2015/02/22 PHP
关于PHP中interface的用处详解
2020/07/26 PHP
用原生JavaScript实现jQuery的$.getJSON的解决方法
2013/05/03 Javascript
Extjs4 类的定义和扩展实例
2013/06/28 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
javascript引用类型之时间Date和数组Array
2015/08/27 Javascript
很棒的Bootstrap选项卡切换效果
2016/07/01 Javascript
JS DOMReady事件的六种实现方法总结
2016/11/23 Javascript
JS字符串false转boolean的方法(推荐)
2017/03/08 Javascript
JS实现的四级密码强度检测功能示例
2017/05/11 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
2017/07/13 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
nodejs实现套接字服务功能详解
2018/06/21 NodeJs
JavaScript实用代码小技巧
2018/08/23 Javascript
小程序文字跑马灯效果
2018/12/28 Javascript
Node.js net模块功能及事件监听用法分析
2019/01/05 Javascript
Javascript迭代、递推、穷举、递归常用算法实例讲解
2019/02/01 Javascript
Jquery实现无缝向上循环滚动列表的特效
2019/02/13 jQuery
layui+SSM的数据表的增删改实例(利用弹框添加、修改)
2019/09/27 Javascript
JavaScript实现京东放大镜效果
2019/12/03 Javascript
[04:19]DOTA2亚洲邀请赛 现场花絮
2015/03/11 DOTA
[37:37]DAC2018 4.4 淘汰赛 Optic vs Mineski 第二场
2018/04/05 DOTA
python 中文字符串的处理实现代码
2009/10/25 Python
python实现多线程采集的2个代码例子
2014/07/07 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
python表格存取的方法
2018/03/07 Python
python tkinter实现彩球碰撞屏保
2019/07/30 Python
解决img标签上下出现间隙的方法
2016/12/14 HTML / CSS
Solaris操作系统的线程机制
2015/07/28 面试题
医院辞职信范文
2014/01/17 职场文书
银行工作检查书范文
2014/01/31 职场文书
道德演讲稿
2014/05/21 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
python中24小时制转换为12小时制的方法
2021/06/18 Python