iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Django模板引擎有几种
  • 535
分享到

Django模板引擎有几种

2023-06-02 07:06:35 535人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关Django模板引擎有几种,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在DjanGo框架中,可以使用两种模板引擎,一种是默认的Django模板引擎,还有一种是Jinja2模板

这篇文章将为大家详细讲解有关Django模板引擎有几种,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

在DjanGo框架中,可以使用两种模板引擎,一种是默认的Django模板引擎,还有一种是Jinja2模板引擎

1.模版引擎的作用和优点

模版引擎作用是将View视图中需要在前端html页面中展示的数据,通过模板引擎的语法规则,展示出来;

模版引擎优点是将业务逻辑的python代码和页面设计的HTML代码分离,使代码更干净整洁更容易维护,使Python程序员和HTML/CSS程序员分开协作,提高生产的效率,且将HTML代码分离出来,还能使其能够复用;

2.HTML模板存放的位置

HTML模板存放的位置有两个,一个是存放在settings文件中指定的DIRS的目录列表中,还有一个是直接在对应的APP包下,创建templates目录,将HTML放置于此即可,不同APP对其他APP目录下的templates目录都是可见的;

3.模板引擎的配置

先在项目的settings.py文件中找到TEMPLATES变量,然后加入

TEMPLATES = [    {        # 选择模板引擎,默认是Django的模板引擎        'BACKEND': 'django.template.backends.django.DjangoTemplates',        #或者是jinja2模版  'BACKEND': 'django.template.backends.jinja2.Jinja2'        # 指定HTML模板存放的目录,如果HTML模板较多,可以设置多个模板路径        'DIRS': [os.path.join(BASE_DIR, 'templates')],        # APP_DIRS的值判断是否支持将template目录放置在APP中,Django默认支持值为True        'APP_DIRS': True,        'OPTioNS': {            'context_processors': [                'django.template.context_processors.debug',                'django.template.context_processors.request',                'django.contrib.auth.context_processors.auth',                'django.contrib.messages.context_processors.messages',            ],        },    },]

4.Django模板引擎的模板语法

变量(VARIABLE):

{{ VARIABLE }}   # 用于引入后台传入的变量{{ VARIABLE.name }}{{ VARIABLE.age }}

标签(TAG):

{% TAG %}   # 用于循环1: 正序 for 循环{% for item in items %}    <p>{{ forloop.counter }}</p>    <p>{{ item.name }}</p>    <p>{{ item.desc }}</p>{% endfor %}2: 倒叙 for 循环{% for item in items reversed %}    <p>{{ forloop.counter }}</p>       # 记录循环到第几次,计数从1开始    <p>{{ item.name }}</p>    <p>{{ item.desc }}</p>{% endfor %}3: 变量字典{% for k,v in dictionary.items %}    <p>{{ k }},{{ v}}</p>{% endfor %}

5.Django模板的继承的作用

在Django开发过程中,页面中的重复部分,可以通过Django的模板继承来完成,这样使得页面开发和管理更简单;

在HTML页面中使用到的关键字:

{% extends 这里填写被继承的HTML页面 %}{% block 这里填写继承的block %}  {% endblock %}{% include 这里填写需要引入的HTML子页面 %}

6.如何实现继承模板

我们知道了模板可以用继承的方式来实现复用,那接下来我们一起来操作一下:

第一步:可以在项目的templates中先编写好一个html页面,作为网站的基础页面被其他页面继承,我的HTML页面为base.html,然后在其中编辑HTML代码,注意要修改的部分写在{% block %} {% endblock %}的中间;

<body>    <div class="header">        今天是星期几呀    </div>    <!-- 内容变化部分 -->    {% block content %}    <div class="content">        <p>今天是星期一</p>    </div>    {% endblock %}    <div class="footer">        好的,谢谢    </div></body>

第二步:在你想要的app的templates目录下创建一个html页面,继承之前的基础页面,我还是使用的courses app,创建一个python.html文件,这些名字都可以自己命名的,不过要注意路径之类的;

{% extends 'base.html' %}{% block content %}     <div class="content">        <p>今天是星期{{ week_id }}</p>    </div>{% endblock %}

第三步:在根路由urls.py中,添加访问路径的路由文件,一定要分清项目的了路由和app的路由哟

url(r'^courses/', include(('courses.urls', 'courses'), namespace='courses')),

第四步:在app的路由文件urls.py中添加要访问的html路径;

urlpatterns = [    url(r'python/(?P<week_id>\d+)$', python, name='python')]

第五步:在app下的views.py中创建一个python函数;

from django.shortcuts import renderdef python(request, week_id):    return render(request, 'python.html', {'week_id': week_id})

然后我们就可以运行项目,运行项目依旧是打断点,然后调试,我们看看结果是否是我们预期的结果呢,比如我的访问路径是

Http://127.0.0.1:8000/courses/python/1

python后面接数字,不然会报错,因为我们在第四步中添加路由访问的html路径的时候正则表达式验证必须是数组,这个可以大家自己修改的,可以按照自己的想法来做练习哟;

关于“Django模板引擎有几种”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: Django模板引擎有几种

本文链接: https://www.lsjlt.com/news/229220.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Django模板引擎有几种
    这篇文章将为大家详细讲解有关Django模板引擎有几种,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在Django框架中,可以使用两种模板引擎,一种是默认的Django模板引擎,还有一种是Jinja2模板...
    99+
    2023-06-02
  • mysql存储引擎有几种
    小编给大家分享一下mysql存储引擎有几种,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql存储引擎答:常用的主要分为两种...
    99+
    2024-04-02
  • jquery有什么模板引擎
    这篇文章主要讲解了“jquery有什么模板引擎”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jquery有什么模板引擎”吧! j...
    99+
    2024-04-02
  • php有哪些模板引擎
    本篇内容主要讲解“php有哪些模板引擎”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php有哪些模板引擎”吧!PHP是一种HTML内嵌式的在服务器端执行的脚本语言,所以大部分PHP开发出来的We...
    99+
    2023-06-21
  • JavaScript中有哪些模板引擎
    这篇文章将为大家详细讲解有关JavaScript中有哪些模板引擎,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1. Art-templateArt-template是一个简单且超快速的模板引...
    99+
    2023-06-16
  • nodejs模板引擎有什么作用
    这篇文章主要讲解了“nodejs模板引擎有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“nodejs模板引擎有什么作用”吧! ...
    99+
    2024-04-02
  • PHP函数的模板引擎
    PHP函数的模板引擎在Web开发中,模板引擎是必不可少的一部分。它可以将动态数据和模板文件进行混合,生成最终的HTML代码。PHP语言是Web开发中常用的开发语言之一,自然也有许多优秀的模板引擎。其中,使用PHP函数实现的模板引擎不仅简单易...
    99+
    2023-05-18
    编程 模板引擎 PHP函数
  • 掌控 Node.js 模板引擎:驾驭模板,引领创新
    ...
    99+
    2024-04-02
  • Nodejs中怎么使用模板引擎以及使用模板引擎渲染HTML
    这篇文章给大家分享的是有关Nodejs中怎么使用模板引擎以及使用模板引擎渲染HTML的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用readdir获取指定路径下的所有文件名文件...
    99+
    2024-04-02
  • Goweb入门Gopongo2模板引擎
    目录下载 pongo2 函数库从字符串中读取模板从文件中读取文本Go pongo2 迭代Go pongo2 过滤Go pongo2 条件总结Go pongo2 教程展示了如何使用 p...
    99+
    2024-04-02
  • PHP中有哪些常用的模板引擎
    今天就跟大家聊聊有关PHP中有哪些常用的模板引擎,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、Smarty Smarty的特点是将模板编译成PHP脚本,然后执行这些脚本。很快,非...
    99+
    2023-06-17
  • PHP中的最佳模板引擎
    PHP是一种广泛应用于Web开发的语言,无论是开发小型网站还是大型系统,PHP都是非常流行和方便的。在PHP开发过程中,我们需要将逻辑和数据层分离开来,这就需要使用到模板引擎。模板引擎可以简单地理解为将数据和模板文件合并,生成最终的HTML...
    99+
    2023-05-24
    PHP 模板引擎 最佳
  • javascript模板引擎实例分析
    本篇内容主要讲解“javascript模板引擎实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript模板引擎实例分析”吧! ...
    99+
    2024-04-02
  • Thymeleaf模板引擎怎么使用
    今天小编给大家分享一下Thymeleaf模板引擎怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2024-04-02
  • Thinkphp 6 使用thinkTemplate 模板引擎
    使用thinkTemplate 模板引擎 由于Thinkphp 5.1 之前的版本 已经将Think-view 拓展 集成到 vendor 中 Tp6 将大部分转为拓展使用 新版框架默认只能支持PHP...
    99+
    2023-09-03
    php 开发语言
  • Python Django 模板引擎解密:让你的网页焕发生机
    Django 模板引擎是 Django Web 框架中一个强大的工具,它允许你分离业务逻辑和表示层。通过使用模板,你可以轻松地创建和渲染动态 HTML 页面,从而简化 Web 开发过程。 模板语法基础 Django 模板使用一种简单易学的...
    99+
    2024-04-02
  • Golang Fiber 模板引擎 HTML:渲染:模板不存在
    在Golang开发中,模板引擎是非常重要的一部分,它能够帮助开发者更方便地渲染HTML页面。而Fiber作为Golang的轻量级Web框架,也提供了自己的模板引擎。在使用Fiber的过...
    99+
    2024-02-11
    golang开发
  • 模板引擎artTemplate及模板预编译器的知识点有哪些
    这篇文章主要讲解了“模板引擎artTemplate及模板预编译器的知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“模板引擎artTemplate及...
    99+
    2024-04-02
  • PHP模板引擎Prototype怎么配置
    这篇文章主要为大家展示了“PHP模板引擎Prototype怎么配置”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP模板引擎Prototype怎么配置”这篇文...
    99+
    2024-04-02
  • nodejs模板引擎的制作方法
    这篇文章主要介绍了nodejs模板引擎的制作方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。关于模板,我倒是用过了不少。最开始要数Java...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作