使用 Flask 和 SQLite 的非常基础的计划管理应用的示例,并提供详细的步骤指南。
开始之前,你需要有 Python 的环境。如果你还没安装,可以参考 Python 官方的安装指南 来完成安装。
Python 环境准备好后,以下是步骤:
- 创建一个新的目录来存储你的项目 打开 terminal 或者 cmd,然后输入以下命令:
mkdir todo_app
cd todo_app
- 创建一个虚拟环境 在你的项目目录中,创建一个新的Python虚拟环境,这样你就能够安装和管理你需要的Python库,而不用担心这影响你系统中的其他Python项目。
python3 -m venv env # for Unix or MacOS
py -m venv env # for Windows
- 激活虚拟环境 虚拟环境创建好后,需要激活,在 Unix 或 MacOS 下:
source env/bin/activate
在 Windows 下:
.\env\Scripts\activate
- 安装 Flask 和 SQLAlchemy 你需要 Flask 来创建 Web 应用,以及 SQLAlchemy 来与 SQLite 数据库进行交互。你可以使用 pip (Python 的包管理器) 来安装这两个库。
pip install flask sqlalchemy
- 创建一个新的文件
app.py
在你的项目目录中,创建一个新的文件app.py
。这个文件将包含我们的 Web 应用的主要代码。可以在 terminal 或者 cmd 中使用touch app.py
来创建该文件。
我们的基础应用需要两个功能:查看所有的任务和添加新的任务。
app.py
的代码如下:
from flask import Flask, request, render_template, redirect
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///tasks.db'
db = SQLAlchemy(app)
class Task(db.Model):
id = db.Column(db.Integer, primary_key=True)
content = db.Column(db.Text, nullable=False)
db.create_all()
@app.route('/', methods=['GET', 'POST'])
def home():
if request.method == 'POST':
new_task = Task(content=request.form['content'])
db.session.add(new_task)
db.session.commit()
return redirect('/')
else:
tasks = Task.query.all()
return render_template('index.html', tasks=tasks)
在这个代码中,我们首先导入需要的库,然后创建一个 Flask 应用并配置 SQLAlchemy。接着定义了一个 Task
类,它用来表示我们的任务。db.create_all()
会创建一个名为 tasks 的数据库,其中包含由 Our Task 类定义的表。
我们定义了一个路由 /
,它响应 GET 和 POST 请求。如果是 GET 请求,则提取所有任务并显示它们;如果是 POST 请求,则创建一个新的任务并将其添加到数据库。
- 创建
index.html
模板 按下面的文件结构在 templates 文件夹下创建index.html
模板:/todo_app ├──/env ├──/templates │ └── index.html ├── app.py
index.html
的代码如下:
<!DOCTYPE html>
<html>
<head>
<title>Todo App</title>
</head>
<body>
<h1>Todo App</h1>
<form method="POST">
<input type="text" name="content" required>
<input type="submit" value="Add Task">
</form>
<ul>
{% for task in tasks %}
<li>{{ task.content }}</li>
{% endfor %}
</ul>
</body>
</html>
在这个 HTML 模板中,我们创建了一个表单用于提交新的任务,并展示了一个列表来显示所有的任务。
- 运行应用 在 terminal 或 cmd 中运行以下命令来启动应用:
python app.py
然后在浏览器中访问 http://127.0.0.1:5000/,你就能够看到你的应用了。
注意,这仅仅是一个最基础的应用。在真实的项目中,你需要处理更多的细节,例如如何处理错误,如何使你的应用更安全(例如,防止 SQL 注入和跨站脚本攻击),以及如何使你的应用更易用(例如,添加用户认证,增加 Ajax 功能等)。但是,这个基础应用对于理解如何创建一个 Flask 应用,以及如何使用 SQLAlchemy 和 SQLite 进行数据库操作,已经足够了。
学习编程是一个不断尝试、犯错误、然后从中学习的过程。对于编程,实战经验非常重要,希望这个指南能够对你有所帮助。
本文由GPT-4.0完成,请勿完全相信!