Flask 网络框架入门

Beginner

This tutorial is from open-source community. Access the source code

简介

本实验将指导你开始使用 Flask,这是一个用于 Python 的轻量级 Web 框架。你将学习如何创建一个基本的 Flask 应用程序,在本地运行它,并理解路由和渲染模板的基本概念。

注意:你需要自己创建代码文件并在环境中运行它。你可以在 Web 5000 上预览 Flask 服务状态。

安装 Flask

要开始使用 Flask,你需要安装它并设置一个新项目。请按照以下说明操作:

  1. 在终端或命令提示符中运行以下命令来安装 Flask:

    pip install flask
    
  2. 打开一个新文件并将其保存为 app.py

    cd ~/project
    touch app.py
    
  3. 导入 Flask 模块并创建 Flask 类的实例:

    from flask import Flask
    
    app = Flask(__name__)
    

创建基本路由

Flask 中的路由定义了应用程序的 URL 模式。让我们创建一个显示“Hello, World!”消息的基本路由。

  1. 将以下代码添加到你的 app.py 文件中:

    @app.route("/")
    def hello_world():
        return "Hello, World!"
    
  2. 保存文件。

运行应用程序

既然你已经设置好了 Flask 应用程序并创建了一个基本路由,现在让我们运行该应用程序并看看它的实际效果。

  1. 在终端或命令提示符中,导航到你的 app.py 文件所在的目录。

  2. 运行以下命令来启动 Flask 开发服务器:

    flask run --host=0.0.0.0
    

--host=0.0.0.0 用于使应用程序可以公开访问。如果你不指定此参数,应用程序将仅在你的本地机器上可用。

然后,切换到 Web 5000 标签页并刷新页面。

添加 HTML 模板

Flask 使用 Jinja2 模板来生成 HTML 内容。让我们创建一个模板文件并在路由中渲染它。

  1. 在你的项目中创建一个名为 templates 的新目录。

  2. templates 目录内,创建一个名为 index.html 的新文件。

  3. 打开 index.html 文件并添加以下 HTML 代码:

    <!doctype html>
    <html>
      <head>
        <title>Flask 快速入门</title>
      </head>
      <body>
        <h1>你好,Flask!</h1>
      </body>
    </html>
    
  4. 修改你的 app.py 文件以渲染 index.html 模板:

    from flask import render_template
    
    @app.route("/")
    def hello_world():
        return render_template("index.html")
    

再次运行应用程序

既然我们已经添加了一个 HTML 模板,那就再次运行应用程序并查看渲染后的模板。

  1. 如果 Flask 开发服务器仍在运行,请停止它(按 Ctrl+C)。

  2. 运行以下命令再次启动服务器:

    flask run --host=0.0.0.0
    

现在你应该会看到在 HTML 模板中显示出“你好,Flask!”的消息。

你好,Flask!

添加动态内容

Flask 允许我们将动态内容传递到模板中。让我们修改路由以传递一个名字参数并显示个性化问候语。

  1. 修改你的 app.py 文件,以便在路由中接受一个名字参数:

    @app.route("/<name>")
    def hello(name):
        return render_template("index.html", name=name)
    
  2. 打开 index.html 文件并修改 <h1> 标签以显示个性化问候语:

    <h1>你好,{{ name }}!</h1>
    

再次运行应用程序

让我们再次运行应用程序并测试动态内容功能。

  1. 如果 Flask 开发服务器仍在运行,请停止它(按 Ctrl + C)。

  2. 运行以下命令再次启动服务器:

    flask run --host=0.0.0.0
    
  3. 复制Web 5000标签页的 URL,并将其粘贴到浏览器的新标签页中。

复制 Web 5000 URL

  1. 在 URL 末尾附加/LabEx并按 Enter 键。

你好,LabEx 网页

  1. 更改 URL 中name参数的值,然后按 Enter 键。

总结

在本实验中,你学习了如何通过设置新项目、创建路由、渲染模板以及传递动态内容来开始使用 Flask。Flask 是用于构建 Web 应用程序的强大工具,本实验为进一步探索和开发奠定了坚实的基础。