だから、あなたは次のように定義されたモデルがあります:
class Row(db.Model)
__tablename__ = 'YourTableName'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(255))
をあなたの特定のユースケースのニーズを満たすために、適切なHTMLフォームを構築する必要があると思います(これはフォームなしで達成することができるが、これは)最も単純な例である:
<form method="POST" action="{{ url_for('update_row') }}">
<input type="hidden" name="id" value="1">
<input type="text" name="name" placeholder="Enter new name">
</form>
は次に、特定の行を更新するために、POST
要求を介して、このフォームの入力を受信して表示する機能を有している:
@app.route('/update_row/', methods=['GET', 'POST'])
def update_row():
if request.method == 'POST':
# query.get() method gets a Row by the primary_key
record = Row.query.get(request.form.get('id', type=int))
# change the values you want to update
record.name = request.form.get('name')
# commit changes
db.session.commit()
# redirect back to your main view
return redirect(url_for('main'))
あなたは、名前が空でないか、またはユースケースに適した他のデータチェックがあるかどうかを確認するなどの検証を追加する必要があります。
テーブルに複数の行があるので、value = "1"を取る代わりに、htmlリクエストフォームから値を取得する方法を教えてください。 – Premchand