1、前言

  • 视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式和HTML代码,这可以让浏览器渲染出非常漂亮的页面。
  • 目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2。
  • DTL是 Django Template Language 三个单词的缩写,也就是Django自带的模板语言
  • 当然也可以配置Django支持Jinja2等其他模板引擎,但是作为Django内置的模板语言,和Django可以达到无缝衔接而不会产生一些不兼容的情况,因此建议使用DTL

2、模板和HTML的区别

  • DTL模板是一种带有特殊语法的HTML文件,这个文件可以被Django编译,可以传递参数进去,实现数据动态化。在编译完成后,生成一个普通的HTML文件,然后发送给客户端
  • 当然Django也可以直接渲染普通的HTML文件,只是这样的话,就和静态网站没有什么区别了。

3、模板渲染的方式

1)原始方法
  • Django在django.template.loader模块下提供了render_to_string方法专门进行DTL语言的文件转换成字符串类型功能
from django.http import HttpResponse
from django.template.loader import render_to_stringdef book_index(request):data = render_to_string('book.html')return HttpResponse(data)
#在render_to_string里传入DTL格式的文件即可
2)快捷方式(最常用的方式)
  • Django在django.shortcuts模块里,提供了很多宽街集成方法,方便代码的书写
  • render就是直接完成生成字符串打包成HttpResponse的封装
def book_index(request):return render(request,'book.html')
#render里必须先传入request对象,他在渲染文件时可以把用户请求的信息也传入模板中'''
render(request,'模板文件的路径',context={字典})       #渲染模板
context上下文,值的类型要求必须为字典,将字典中的数据渲染到模板文件中,通过字典的键key取得对应的value
'''

Django的模板语言DTL介绍以及渲染方式相关推荐

  1. Djiango模板语言DTL

    一.变量 def dtl(request):num = 3.14ss = 'abc123嘿嘿'# return render(request, 'django_dtl.html', {'number' ...

  2. python框架django文档_Django基础——Django框架介绍及模板语言

    Django框架,我们只需要关心二点: 1.根据用户访问不同的路径执行不同的函数 2.从HTML读取出内容,并且完成字符串的替换 而socket通信不需要我们自己写: 新建Django项目 命令行创建 ...

  3. Django模板语言

    常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含义, ...

  4. Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流

    模板语言自定义方法介绍 自定义方法注意事项 Django中有simple_tag 和 filter 两种自定义方法,之前也提到过,需要注意的是 扩展目录名称必须是templatetags templa ...

  5. Django模板语言相关内容

    Django模板语言相关内容 Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 在Django的模板语言 ...

  6. django 模板mysql_59 Django基础三件套 , 模板{{}}语言 , 程序连mysql Django项目app Django中ORM的使用...

    主要内容:https://www.cnblogs.com/liwenzhou/p/8688919.html 1 form表单中提交数据的三要素 a : form标签必须要有action和method的 ...

  7. Django模板语言及视图

    1.Django的模板语言 1.{{ name }} -->变量 2.for循环: {% for i inbook_list %} {{ forloop.counter }} {{ forloo ...

  8. python语言的格式框架_django框架模板语言使用方法详解

    本文实例讲述了django框架模板语言使用方法.分享给大家供大家参考,具体如下: 模板功能 作用:生成html界面内容,模版致力于界面如何显示,而不是程序逻辑.模板不仅仅是一个html文件,还包括了页 ...

  9. 04 Django之模板系统

    一.语法 关于模板渲染只需要记住两种特殊符号(语法): {{ }} 和 {% %}  (变量相关用{{ }}  逻辑相关用{% %}) 二.变量 在Django的模板语言中按照{{ 变量名 }}来使用 ...

  10. 13.2.4 模板层——模板语言

    Django约定将所有的HTML文档都放在templates文件夹下,注意,templates是模板的意思,这是因为放在templates文件夹下的并不全是HTML文档,如果文档中包含Django的模 ...

最新文章

  1. 单击时选择HTML文本输入中的所有文本
  2. python3语法错误-python3中的def函数语法错误
  3. 在deepin系统中制作桌面快捷方式
  4. LeetCode 21 合并两个有序链表
  5. mysql workbench画E-R图,并根据E-R生成sql(步骤超完整)
  6. 树:二叉树的层序遍历算法(超简洁实现及详细分析)
  7. 呼叫前转业务在VoIP系统中的实现
  8. 均值滤波python实现_python手写均值滤波
  9. android设置字符串到剪贴板
  10. PDF格式转换工具百度网盘下载地址及破解方法
  11. 【CISCO】链路聚合基础命令详解。
  12. 计算机word文档工作区名称,word文档界面名称 word文档的界面组成
  13. (休息几天)读米什金之货币银行学——金融市场工具
  14. ping请求超时问题研究
  15. adobe cs5全线作品
  16. 二见钟情之组合查询(vb.net版)
  17. python中的方法
  18. elementUI表格树动态合并列问题处理(最终版,---新需求)
  19. OpenCV是什么?它的作用是什么?
  20. Mobileye+采埃孚“中标”丰田全系新车,L2/L2+市场红利爆发

热门文章

  1. bitbucket配置_如何配置Bitbucket的ssh
  2. Mysql中的straight_join
  3. 苹果软件上app注意事项
  4. 个人作业——软件产品案例分析
  5. 推荐一个 推理屋 网站
  6. 象棋小游戏java_java实现象棋小游戏
  7. evga x58服务器芯片组,EVGA发布X58主板 首次涉足Intel芯片组
  8. 向境外支付软件测试费,支付宝怎么打开境外支付?境外支付有手续费吗?
  9. AI赋能下的出入口控制技术在公共安全建设中的深度应用
  10. 关于UDS诊断会话管理功能相关服务的学习笔记