重用wtforms来更新和添加数据库中的记录可以通过以下步骤实现:
from flask import Flask, render_template, request
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = '数据库连接地址'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50), nullable=False)
email = db.Column(db.String(50), nullable=False)
class UserForm(FlaskForm):
name = StringField('姓名', validators=[DataRequired()])
email = StringField('邮箱', validators=[DataRequired()])
submit = SubmitField('提交')
@app.route('/', methods=['GET', 'POST'])
def index():
form = UserForm()
if form.validate_on_submit():
user = User(name=form.name.data, email=form.email.data)
db.session.add(user)
db.session.commit()
return '添加成功'
return render_template('index.html', form=form)
<!DOCTYPE html>
<html>
<head>
<title>用户信息</title>
</head>
<body>
<h1>用户信息</h1>
<form method="POST" action="/">
{{ form.csrf_token }}
{{ form.name.label }} {{ form.name }}
{{ form.email.label }} {{ form.email }}
{{ form.submit }}
</form>
</body>
</html>
以上代码实现了一个简单的添加用户信息的功能,如果要实现更新记录的功能,可以在表单类中添加一个隐藏字段来接收要更新的记录的ID,并在路由处理函数中根据ID查询记录并更新。
这里推荐使用腾讯云的云数据库MySQL作为数据库服务,具有高可用、高性能、弹性扩展等优势。相关产品介绍和链接如下:
注意:以上答案仅供参考,具体实现方式可能因实际情况而异,需要根据具体需求进行调整。
领取专属 10元无门槛券
手把手带您无忧上云