Python 正在尝试编辑条目,但数据库不更新

Python 正在尝试编辑条目,但数据库不更新,python,flask,flask-sqlalchemy,flask-wtforms,Python,Flask,Flask Sqlalchemy,Flask Wtforms,我正在尝试更新数据库中的记录。表单呈现良好,并从views.py接收输入。提交后,重定向工作,但数据库不会使用表单数据更新。我错过了什么 model.py views.py 您正在删除更新,然后再更新。它实际上更新了数据库,但是form.party\u name.data=party.party\u name已经覆盖了您的新数据。您是否用其他方法或函数提交这些更新?@IronFist这在flask中通常不需要,但即使我添加了DB.session.commit,它也不会将值存储在数据库中。是的,谢

我正在尝试更新数据库中的记录。表单呈现良好,并从views.py接收输入。提交后,重定向工作,但数据库不会使用表单数据更新。我错过了什么

model.py views.py
您正在删除更新,然后再更新。它实际上更新了数据库,但是form.party\u name.data=party.party\u name已经覆盖了您的新数据。

您是否用其他方法或函数提交这些更新?@IronFist这在flask中通常不需要,但即使我添加了DB.session.commit,它也不会将值存储在数据库中。是的,谢谢,这很有效!我将表单.party\u name.data=party.party\u name移动到if循环之后,问题就解决了
class Party(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    party_name = db.Column(db.String(64))
@main.route('/edit-party/<int:id>', methods=['GET', 'POST'])
def edit_party(id):
    party = Party.query.filter_by(id=id).first_or_404()
    form = PartyForm()
    form.party_name.data = party.party_name
    if form.validate_on_submit():
        party.party_name = form.party_name.data
        db.session.add(party)
        return redirect('parties')
    return render_template('edit.html', form=form)