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中unittest实现简单的单元测试实例详解
Jan 09 Python
python批量修改文件编码格式的方法
May 31 Python
python交换两个变量的值方法
Jan 12 Python
12个Python程序员面试必备问题与答案(小结)
Jun 24 Python
python用quad、dblquad实现一维二维积分的实例详解
Nov 20 Python
python 解压、复制、删除 文件的实例代码
Feb 26 Python
Django 多对多字段的更新和插入数据实例
Mar 31 Python
python读取配置文件方式(ini、yaml、xml)
Apr 09 Python
详解基于Scrapy的IP代理池搭建
Sep 29 Python
Python下使用Trackbar实现绘图板
Oct 27 Python
python爬虫判断招聘信息是否存在的实例代码
Nov 20 Python
python中lower函数实现方法及用法讲解
Dec 23 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和ACCESS写聊天室(八)
2006/10/09 PHP
PHP编码规范之注释和文件结构说明
2010/07/09 PHP
基于PHP选项与信息函数的使用详解
2013/05/10 PHP
php实现通过ftp上传文件
2015/06/19 PHP
php实现网站文件批量压缩下载功能
2015/10/28 PHP
php实现按天数、星期、月份查询的搜索框
2016/05/02 PHP
PHP生成短网址方法汇总
2016/07/12 PHP
PHP 中使用ajax时一些常见错误总结整理
2017/02/27 PHP
PHP验证类的封装与使用方法详解
2019/01/10 PHP
PHP中$GLOBALS与global的区别详解
2019/03/21 PHP
javascript 模拟点击广告
2010/01/02 Javascript
javascript 获取图片尺寸及放大图片
2013/09/04 Javascript
JSP跨iframe如何传递参数实现代码
2013/09/21 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
JS实现可拖曳、可关闭的弹窗效果
2015/09/26 Javascript
js Canvas实现圆形时钟教程
2016/09/19 Javascript
cropper js基于vue的图片裁剪上传功能的实现代码
2018/03/01 Javascript
js使用formData实现批量上传
2020/03/27 Javascript
javascript数组去重方法总结(推荐)
2019/03/20 Javascript
微信小程序传值以及获取值方法的详解
2019/04/29 Javascript
vue中使用element ui的弹窗与echarts之间的问题详解
2019/10/25 Javascript
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
python文件操作之目录遍历实例分析
2015/05/20 Python
举例讲解Python中的list列表数据结构用法
2016/03/12 Python
详解DeBug Python神级工具PySnooper
2019/07/03 Python
python 通过exifread读取照片信息
2020/12/24 Python
CSS3中的5个有趣的新技术
2009/04/02 HTML / CSS
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
园林资料员岗位职责
2013/12/30 职场文书
解除施工合同协议书
2014/10/17 职场文书
安全生产警示教育活动总结
2015/05/09 职场文书
学生乘坐校车安全责任书
2015/05/11 职场文书
让世界充满爱观后感
2015/06/10 职场文书
电影红河谷观后感
2015/06/11 职场文书
一道JS算法面试题——冒泡、选择排序
2021/04/21 Javascript
MySQL实现用逗号进行拼接、以逗号进行分割
2022/12/24 MySQL