python flask +mysql 必须包含三大功能(浏览留言、添加留言和删除留言)留言板
时间: 2024-03-23 08:39:47 浏览: 122
好的,我理解您的问题了。针对您的需求,我可以给您提供一个基于 Flask 和 MySQL 的留言板应用程序,它包含了浏览留言、添加留言和删除留言三个功能。
首先,您需要安装 Flask 和 MySQL 的相关依赖。您可以使用以下命令来安装这些依赖:
```
pip install flask
pip install mysql-connector-python
```
接下来,您可以使用以下代码实现留言板应用程序的三个功能:
```python
from flask import Flask, render_template, request, redirect
import mysql.connector
app = Flask(__name__)
# 连接 MySQL 数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
)
# 定义留言板首页路由
@app.route('/')
def index():
cursor = mydb.cursor()
# 查询所有留言
cursor.execute("SELECT * FROM messages")
messages = cursor.fetchall()
return render_template('index.html', messages=messages)
# 定义添加留言路由
@app.route('/add', methods=['POST'])
def add_message():
cursor = mydb.cursor()
# 获取表单提交的留言内容
message = request.form['message']
# 插入留言到数据库
sql = "INSERT INTO messages (message) VALUES (%s)"
val = (message,)
cursor.execute(sql, val)
mydb.commit()
return redirect('/')
# 定义删除留言路由
@app.route('/delete/<int:id>')
def delete_message(id):
cursor = mydb.cursor()
# 根据留言ID删除留言
sql = "DELETE FROM messages WHERE id = %s"
val = (id,)
cursor.execute(sql, val)
mydb.commit()
return redirect('/')
if __name__ == '__main__':
app.run()
```
以上代码中,我们使用了 Flask 的路由功能来处理不同的请求。`index()` 函数用于显示留言板首页,其中我们使用了 MySQL 数据库来查询所有留言并渲染到模板上。`add_message()` 函数用于处理添加留言的请求,我们获取表单提交的留言内容,并将其插入到数据库中。`delete_message()` 函数用于处理删除留言的请求,我们根据留言的 ID 删除相应的留言。
最后,我们在 `if __name__ == '__main__'` 代码块中启动 Flask 应用程序。
请注意,以上代码仅供参考,您需要根据自己的实际情况进行修改和优化。
阅读全文