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实现并行抓取整站40万条房价数据(可更换抓取城市)
Dec 14 Python
python僵尸进程产生的原因
Jul 21 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
Django使用httpresponse返回用户头像实例代码
Jan 26 Python
Python实现的远程登录windows系统功能示例
Jun 21 Python
python使用tornado实现登录和登出
Jul 28 Python
Python设计模式之组合模式原理与用法实例分析
Jan 11 Python
详解如何设置Python环境变量?
May 13 Python
Pytorch中Tensor与各种图像格式的相互转化详解
Dec 26 Python
Python截图并保存的具体实例
Jan 14 Python
python实现剪贴板的操作
Jul 01 Python
Python中的pprint模块
Nov 27 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显示今天、今月、上月、今年的起点/终点时间戳的代码
2011/05/25 PHP
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
PHP中PDO事务处理操作示例
2018/05/02 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
TextArea 控件的最大长度问题(js json)
2009/12/16 Javascript
div拖拽插件——JQ.MoveBox.js(自制JQ插件)
2013/05/17 Javascript
js 获取input点选按钮的值的方法
2014/04/14 Javascript
JavaScript中的toLocaleLowerCase()方法使用详解
2015/06/06 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
JavaScript访问字符串中单个字符的两种方法
2015/07/03 Javascript
jQuery设置Easyui校验规则(推荐)
2016/11/21 Javascript
十大热门的JavaScript框架和库
2017/03/21 Javascript
Three.js的使用及绘制基础3D图形详解
2017/04/27 Javascript
jquery animate动画持续运动的实例
2017/11/29 jQuery
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
微信小程序结合mock.js实现后台模拟及调试
2019/03/28 Javascript
vue模仿网易云音乐的单页面应用
2019/04/24 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
vue中组件通信的八种方式(值得收藏!)
2019/08/09 Javascript
Vue组件模板及组件互相引用代码实例
2020/03/11 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
[00:17]天涯墨客一技能展示
2018/08/25 DOTA
python3 shelve模块的详解
2017/07/08 Python
python遍历序列enumerate函数浅析
2017/10/17 Python
实时获取Python的print输出流方法
2019/01/07 Python
简单了解Python生成器是什么
2019/07/02 Python
使用py-spy解决scrapy卡死的问题方法
2020/09/29 Python
N.Peal官网:来自伦敦的高档羊绒品牌
2018/10/29 全球购物
漫威玩具服装及周边商品官方购物网站:Marvel Shop
2019/05/11 全球购物
毕业自荐书
2013/12/09 职场文书
承诺书的格式范文
2014/03/28 职场文书
六一儿童节演讲稿
2014/05/23 职场文书
初中教师个人工作总结
2015/02/10 职场文书