整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

5分钟学会用Python Jinja2模板引擎渲染H

5分钟学会用Python Jinja2模板引擎渲染HTML网页

深入Python Web开发的过程中,HTML模板渲染是构建动态Web应用的重要环节。今天将详细探讨如何使用Python中最流行的模板引擎之一——Jinja2来进行高效且灵活的模板渲染。通过具体的代码示例,将了解如何结合Flask框架与Jinja2实现数据与视图的完美分离。

Jinja2简介

Jinja2是一个强大的现代模板引擎,设计用于Python web开发项目,它支持变量替换、控制结构、过滤器和宏等丰富的功能。Flask框架默认集成并推荐使用Jinja2进行模板渲染,使其成为Python Web开发者手中不可或缺的工具。

安装与配置Jinja2(适用于未安装Flask环境)

如果已经安装过Flask,Jinja2通常已随Flask一同安装。若需要单独安装:

pip install Jinja2

基本使用示例

1.创建模板文件

在项目中创建一个名为templates的文件夹,并在其内放置我们的HTML模板文件,例如index.html:

<!-- templates/index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Html渲染示例</title>
</head>
<body>
    <h1>{{ title }}</h1>
    <p>Welcome to {{ site_name }}!</p>
    <ul>
    {% for item in items %}
        <li>{{ item }}</li>
    {% endfor %}
    </ul>
</body>
</html>

在这个模板中,我们用{{ variable }}表示变量占位符,{% %}表示控制结构

2.Flask中加载和渲染模板

在Flask应用中,我们需要导入render_template函数来加载并渲染模板:

from flask import Flask, render_template

app=Flask(__name__)

@app.route('/')
def home():
    # 定义传递给模板的数据
    title='主页'
    site_name='Html模板渲染示例'
    items=['Item 1', 'Item 2', 'Item 3']

    # 渲染模板并将数据传递给模板
    return render_template('index.html', title=title, site_name=site_name, items=items)

if __name__=='__main__':
    app.run(debug=True)

当用户访问主页时,Flask会调用home函数,其中render_template函数会查找templates目录下的index.html模板,并将定义好的变量替换到相应的位置。

Jinja2高级特性

1. 控制结构

除了简单的循环外,Jinja2还支持条件判断和其他逻辑操作:

<!-- 在模板中添加条件判断 -->
{% if user.is_authenticated %}
    <p>Welcome, {{ user.username }}!</p>
{% else %}
    <p>Please log in.</p>
{% endif %}

2. 过滤器

Jinja2内置了众多过滤器,可以对变量进行处理,如格式化日期、转换大小写等:

<!-- 使用过滤器格式化日期 -->
<p>The date is: {{ current_date|date("Y-m-d") }}</p>

3. 宏

宏允许复用或封装常见的HTML片段,提高代码可读性和维护性:

{# 在一个单独的macros.html模板中定义宏 #}
{% macro render_item(item) %}
    <div class="item">
        <h3>{{ item.title }}</h3>
        <p>{{ item.description }}</p>
    </div>
{% endmacro %}

然后在其他模板中引入并使用该宏:

{% from 'macros.html' import render_item %}

<ul>
{% for item in items %}
    {{ render_item(item) }}
{% endfor %}
</ul>

结语

通过本文,我们已经深入了解了Jinja2模板引擎的基础使用方法以及其高级特性。掌握好Jinja2能够显著提升你的Web应用开发效率,实现更复杂、更美观的动态页面布局。

关注我,手把手带你快速入门Python Web编程!

现代社会,网页已经成为企业、个人展示和宣传的重要窗口,因此掌握网页制作技能是非常有必要的。今天,我们将为大家介绍8款优秀的网页设计模板网站,哪怕是小白也能帮助你快速搭建出令人惊艳的网页。

一、即时设计

即时设计是一款支持在线协作的专业级 UI 设计工具,用户数已突破230万,支持 Sketch、Figma、XD 格式导入,无需下载,在线使用。10000+精选设计资源、100+提效插件即拿即用;支持创建交互原型、获取设计标注,为产设研团队提供一站式协同办公体验,一个链接即可完成交付,内容修改实时同步。

响应式网页设计:

优点:

  • 漏标的地方开发者也可以自行切图
  • 支持多平台预设及批量导出
  • 颜色整合显示,一键定位对应元素

二、17素材

17素材网主要收集jQuery网页特效、jQuery网页代码、网站模板、网页模板、企业模板、商城模板、图标等素材,为html网站模板开发人员提供高效率的工作方式。

部分素材需要积分才能下载。

三、 jquery 插件库

jQuery插件库是一组由开发者编写的、可重复使用的jQuery插件集合,为Web开发人员提供了多种常用功能的封装。这些插件可以快速实现诸如表单验证、图片轮播、下拉菜单、模态框等功能,使得Web开发人员能够更快地完成开发任务,减少代码重复性工作。

它快速、轻量并且简化了我们浏览 HTML 文档和操作页面元素的方式。因为它还具有高度可扩展性,所以在框架之上构建了许多jQuery 插件来为网站添加功能。从 UI 组件和元素到布局和网格,有一个jQuery 插件可以满足您网站所需的几乎所有功能。

详情页还可以查看详细代码。

四、凡科建站

凡科建站提供自助建站、做网站、快速建站等营销推广服务,凡科建站平台提供网站模板资源,拥有2000万+流量入口,精选优质服务商,7*8在线服务;四大搜索覆盖,快速上线,全网曝光,助力商家完成营销目标。

网站模板图片素材定期更新,简单易操作,小白也会使用;而且拥有SEO框架布局,首页、栏目产品及文章页均可独立设置标题/关键词/描述;后台直接修改联系方式、传真、邮箱、地址等,修改更加方便;同一个后台管理,四网合一,用户体验好!

优点:

  • 3000+精美网站模板,免费使用
  • 100+行业覆盖,应有尽有
  • 素材丰富,图片、字体、视频等多种素材

五、网站模板库

网站模板库提供大量精选高质量并永久免费的(网站模版、网页模板、手机模板、企业网站模板、网站模版),包括html模板、后台管理模板、博客模板及各行业类型等上千种模版。

模板素材众多。

优点:

  • 后台操作简单,功能全面
  • 分类详细,可以根据自己的需求快速找到合适的模板
  • 网站自适应,根据屏幕大小改变网站布局,不变形

六、模板

提供海量精美免费网站模板、企业网站模板、html模板网站、公司网站模板、手机网站模板、自适应网站模板等免下载使用。

该网站收集了大量优质网站设计作品,适用于多个专业的 WordPress 主题模板、HTML5模板、CSS Menu等实用资源。

特色:

  • 100%的响应
  • 漂亮和干净的设计
  • 清洁和注释代码

七、AB模板网

AB模板网专注企业网站模板制作,包括企业pbootcms网站模板,静态网页模板,网站源码下载,HTML网站模板等等。

这个网站专门提供织梦的网页模板,性质和上面一样,也是上传到服务器上。

特点:

  • 手工书写DIV+CSS、代码精简无冗余
  • 分类详细,根据需要直接定位
  • SEO框架布局,栏目及文章页均可独立设置标题/关键词/描述

八、织梦猫

织梦猫是一个网站模板分享交流平台,网站以织梦模板、建站资讯、织梦教程为主要内容,以“共享创造价值”为理念,以“尊重原创”为准则。满足用户不同的网站模板需求。

同样也提供dedecms的网页模板。

模板安装方法:

  1. 下载最新的织梦dedecms5.7 UTF8版本。
  2. 解压下载的织梦安装包,得到docs和uploads两个文件夹,将uploads里面的所有文件和文件夹上传到你的网站根目录
  3. 安装dede系统。(如果您已经安装,请跳过本步.)直接运行:http://您的域名/install
  4. 将web文件夹内的所有文件夹上传并覆盖到织梦的安装目录;
  5. 登陆后台并还原数据库:

1)进入dede后台,找到“系统”-“数据库备份/还原”

2)在屏幕右上角点击“数据还原”

3)点击屏幕下方的'开始还原'按钮

  1. 确定网站风格(无论是否修改,都点击一下确定):

1)点击“系统”---系统基本参数

2)将“站点根网址”改为您的网址,如http://www.xxx.com/(本地安装请保持http://127.0.0.1。)

3)点击“确定”按钮

  1. 更新整站缓存: 点击“生成”-“更新系统缓存”
  2. 更新网站: 点击“生成”-“一键更新网站”-“更新所有”-“开始更新” 点击“生成”-“更新主页html” 至此,模板安装结束

这些网页模板网站提供了多样化的选择,从专业的商业网站到个人博客,从免费的模板到付费的高级模板,满足了不同用户的需求。无论您是有设计经验的专业人士还是初学者,这些网站都能帮助您快速搭建一个具有吸引力和功能性的网站。

如果你还有更好的方式或工具推荐,记得在评论区互动讨论!

更多工具推荐

分享6款免费项目管理工具,让你的工作效率暴增!

想提高工作效率?快来看看这6个办公神器!

下是一些常用的HTML网页源代码示例,这些示例可用作HTML文档的基础:

1、创建一个简单的HTML文档结构:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport"content="width=device-width,initial-scale=1.0">

<title>My Web Page</title>

</head>

<body>

<h1>Hello,World!</h1>

<p>This is a simple HTML webpage.</p>

</body>

</html>

2、插入图片:

<img src="image.jpg"alt="Description of the image">

3、创建超链接:

<a href="https://www.example.com">Visit Example.com</a>

4、创建无序列表:

<ul>

<li>Item 1</li>

<li>Item 2</li>

<li>Item 3</li>

</ul>

5、创建有序列表:

<ol>

<li>First item</li>

<li>Second item</li>

<li>Third item</li>

</ol>

6、创建表格:

<table>

<tr>

<th>Header 1</th>

<th>Header 2</th>

</tr>

<tr>

<td>Row 1,Cell 1</td>

<td>Row 1,Cell 2</td>

</tr>

<tr>

<td>Row 2,Cell 1</td>

<td>Row 2,Cell 2</td>

</tr>

</table>

7、插入段落:

<p>This is a paragraph of text.</p>

8、插入换行符:

<p>This is some text.<br>This is on a new line.</p>

9、创建一个文本输入框:

<input type="text"name="username"placeholder="Enter your username">

10、插入按钮:

<button type="button">Click me</button>

这些示例代码只是HTML的基础,HTML具有更丰富的功能和标记选项,可以根据需要进行扩展和定制。请根据您的具体需求,使用这些示例作为起点,构建您自己的网页。

【名扬银河企业网站系统】

【免费】提供企业【网站源码】,简单易用,无须拥有代码基础。

欢迎留言或私信我们咨询。

以上内容由【名扬银河】企业网站系统原创发布,转载请注明出处。