Flask 是一个 Python 的轻量 Web 库,基于 Werkzeug WSGI 工具箱和 Jinja2 模板引擎开发。它使用简单,灵活,可扩展性强,被用于快速开发 Web 应用,以及作为各种框架和工具之间的中间件。在本篇文章中,我们将介绍如何通过 Flask 来创建一个简单的 Web 应用。我们将使用 Python 内置的 Flask 库,以及 SQLite 数据库和 HTML 模板,来演示如何实现数据的存储和展示,以及用户表单的提交和处理。目标是完成一个能够让用户发布文章和查看之前发布的文章的 web 应用。
首先,在 Python 中安装 Flask 库。然后,创建一个名为 app.py 的Python 文件,在文件中导入 Flask 库,创建 Flask 应用程序对象 app。现在,定义根路径(/)上的路由,以便 Flask 应用程序知道如何响应 Web 请求。此时,我们可以在浏览器中输入我们的 URL(http://localhost:5000/),并查看 Flask 应用程序的输出:Hello, Flask! 如果此时无法访问,则需检查是否遗漏了端口号的设置,是否运行了 app.run() 方法等。
接下来,我们需要定义一个 URL(/post)来处理数据的存储和提交。首先,需要导入 SQLite3 库,并创建一个名为 post.db 的数据库文件。然后,定义一个名为 insert_post(title, content) 的函数,可以将用户传入的标题和内容存储到数据库中。
定义完数据存储后,接下来需要定义一个表单来接收用户的输入。我们使用 Flask 表单库来定义我们的表单。这涉及到创建一个名为 PostForm 的类,该类将显示在 HTML 界面上的字段,并且可以验证用户输入是否合法。然后在 /post URL 中处理用户的表单提交,使用 post_form.title 和 post_form.content 来获得表单中用户输入的数据,将其传递到 insert_post() 函数中,将数据存储到 SQLite 数据库中。
最后,我们需要定义一个 URL(/list)来显示之前发布的文章。我们从 SQLite 数据库中获取存储的数据记录,使用 Jinja2 渲染模板来生成 HTML 界面,将数据以表格的形式展示给用户。现在,我们有了一个完整的基于 Flask 的 Web 应用:一个简单的博客系统。