【问题标题】:Put text into input html field using Flask使用 Flask 将文本放入输入 html 字段
【发布时间】:2021-03-09 10:20:13
【问题描述】:

我知道我可以在 POST 方法之后使用 request.form['email'] 轻松地从 html 输入标签中提取数据。 有没有办法用类似的东西填充这个特定的输入标签:

request.form['email'] = current_user.email

这显然会抛出'ImmutableMultiDict' objects are immutable? (不使用 FlaskWTF)。 任何帮助将不胜感激!

【问题讨论】:

标签: python html python-3.x flask


【解决方案1】:

你可以覆盖 request.form :

from werkzeug.datastructures import ImmutableMultiDict
from flask import Flask,request

app = Flask(__name__)

@app.route('/')
def hello_world():
    # overwrite request.form to add 'email'
    tempo_form_dict = request.form.to_dict()
    tempo_form_dict['email'] = 'Hello@World'
    request.form = ImmutableMultiDict(tempo_form_dict)
    
    ## Then you can use request.form as it was inputted...
    
    return str(request.form)

if __name__ == '__main__':
    app.run(debug=True,host=None,port=5000)

一个链接的问题:Python Werkzeug: modify Request values (forms and args) prior to retrieval

【讨论】:

    【解决方案2】:

    实际上,这可以通过value 属性轻松完成,例如:

    <input class="email" name="email" value="{{ current_user.email }}" required/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-07
      • 1970-01-01
      • 2015-07-08
      • 1970-01-01
      • 2016-07-14
      相关资源
      最近更新 更多