如何提供一种从前端编辑 Flask 应用程序文本的方法?

我正在创建一个烧瓶应用程序,我想提供一种方法来在我登录后编辑我个人网站上的文本。我目前正在使用 MySQL 作为我的数据库。需要明确的是,我希望编辑是从前端完成的,有什么办法可以做到这一点吗?



Cats萌萌
浏览 109回答 1
1回答

慕哥9229398

您可以在 Flask 中使用WTForm,在表单提交时将编辑后的数据传递给数据库。Flask-WTF 为您的 Flask 应用程序提供与 WTForms 的集成。例如:` from flask_wtf import FlaskForm from wtforms import StringField from wtforms.validators import DataRequiredclass MyForm(FlaskForm):     name = StringField('name', validators=[DataRequired()])`注意从 0.9.0 版本开始,Flask-WTF 将不会从 wtforms 中导入任何内容,您需要从 wtforms 中导入字段。此外,还会自动创建一个 CSRF 令牌隐藏字段。你可以在你的模板中呈现这个:`<form method="POST" action="/">    {{ form.csrf_token }}    {{ form.name.label }} {{ form.name(size=20) }}    <input type="submit" value="Go"></form>If your form has multiple hidden fields, you can render them in one block using hidden_tag().<form method="POST" action="/">    {{ form.hidden_tag() }}    {{ form.name.label }} {{ form.name(size=20) }}    <input type="submit" value="Go"></form>Validating Forms Validating the request in your view handlers:@app.route('/submit', methods=('GET', 'POST'))def submit():    form = MyForm()    if form.validate_on_submit():        #you can write your db logic here.        return redirect('/success')    return render_template('submit.html', form=form)` 请注意,您不必将 request.form 传递给 Flask-WTF;它会自动加载。便利的 validate_on_submit 将检查它是否是 POST 请求以及它是否有效。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python