📌  相关文章
📜  使用 Flask 的待办事项列表应用程序 | Python(1)

📅  最后修改于: 2023-12-03 15:36:27.923000             🧑  作者: Mango

使用 Flask 的待办事项列表应用程序 | Python

本文将介绍如何使用 Flask 和 Python 来创建一个待办事项列表应用程序。

准备工作

在开始之前,确保你已经安装了 Python 和 Flask。你可以在终端中运行以下命令来检查是否已经安装过 Flask:

$ pip freeze | grep Flask

如果已安装,你应该会看到类似于以下内容的输出:

Flask==1.1.2

如果没有安装,请使用以下命令:

$ pip install Flask
创建 Flask 应用程序

在创建 Flask 应用程序之前,你需要创建一个新的 Python 虚拟环境。运行以下命令:

$ python -m venv venv

然后激活虚拟环境:

$ source venv/bin/activate

接下来,创建一个名为 app.py 的文件,该文件是整个 Flask 应用程序的入口点。

在 app.py 中,我们将使用 Flask 通过以下方式来创建一个应用程序:

from flask import Flask

app = Flask(__name__)

这创建了一个名为 app 的 Flask 实例。现在我们可以添加路由、模板和其它功能,以构建出我们的应用程序。

创建待办事项列表

首先,我们需要一个地方来存储待办事项。为此,我们可以使用一个简单的 Python 列表来保存它们。在 app.py 文件中添加以下代码:

tasks = []

@app.route('/')
def index():
    return 'Hello, World!'

这创建了一个名为 tasks 的列表,并为根路由 / 添加了一个视图函数 index()。

现在让我们来添加一个表单,以便用户可以将新的待办事项添加到列表中。在 app.py 文件中添加以下代码:

from flask import render_template, request, redirect

@app.route('/', methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        task = request.form['task']
        tasks.append(task)
        return redirect('/')
    return render_template('index.html', tasks=tasks)

这个视图函数现在接受 GET 和 POST 请求。当用户打开页面时,GET 请求将呈现出待办事项列表的 HTML、CSS 和 JavaScript,并呈现出一个表单,允许用户提交新的待办事项。当用户提交表单时,POST 请求将接收表单中的任务,并将其添加到列表中。然后这个函数会将用户重定向到首页。

我们还要添加一个 HTML 模板。在根目录下创建一个名为 templates 的文件夹,在其中创建一个名为 index.html 的文件。

在 index.html 文件中添加以下代码:

<!doctype html>
<html>
  <head>
    <title>ToDo List</title>
  </head>
  <body>
    <h1>ToDo List</h1>
    <ul>
      {% for task in tasks %}
        <li>{{ task }}</li>
      {% endfor %}
    </ul>
    <form method="POST">
      <input type="text" name="task" placeholder="Add task..." required>
      <button type="submit">Add</button>
    </form>
  </body>
</html>

这是一个简单的模板,它允许用户添加新的待办事项并呈现出当前列表中的所有待办事项。

现在,你可以在终端中运行以下命令来启动 Flask 应用程序:

$ export FLASK_APP=app.py
$ export FLASK_ENV=development
$ flask run

访问 http://localhost:5000 即可查看待办事项列表应用程序。

总结

本文介绍了如何使用 Flask 和 Python 来创建一个简单的待办事项列表应用程序。这个应用程序使用 Flask 实例来处理 URL 和视图函数,并使用模板来呈现 HTML、CSS 和 JavaScript。这里我们还介绍了如何使用 Python 列表来保存待办事项,并通过表单允许用户向该列表添加新的事项。