Python:烧瓶中缺少错误消息

时间:2018-07-23 10:46:50

标签: python forms flask

我正在使用烧瓶来构建Web应用程序。我使用flaskform类来呈现表单。我使用验证器来捕获错误。遵循网络上的教程,一切正常。但是当我做以下事情时遇到了一个问题:

  1. 假定我具有以下内容:查看函数“ url1”,“ url2”和一个Jinja文件“ url1_jinja”。 (url1呈现url1_jinja)

  2. 由于某种原因,在url1_jinja中,我在

    中使用选项“ action”将表单提交给函数url2。

  3. 函数url2完成后,我重定向到当前的url1。
  4. 然后出现问题。表单中有一些非法输入时,我不知道在哪里可以输出错误。

如果要保留此工作流程,有什么解决办法吗?

更新:

我上传了示例代码。请给我一些建议,以反馈客户端的错误。解决方案越多越好。我本人并不熟悉JS,但是也欢迎使用简单的脚本代码。

    import flask,os
    from flask_wtf import FlaskForm
    from wtforms import StringField,   SubmitField, validators
    #---------------------------------

    app = flask.Flask(__name__)
    app.config['SECRET_KEY'] = os.urandom(24)
    #-------------------------------------------------------------------------------------------


    class FORM(FlaskForm):
        txt    = StringField('txt'  , validators=[ validators.length(min=4) ] )
        submit      = SubmitField('submit')


    html = '''

      <form action = '/fun' method="POST" >
       {{ form.csrf_token }}
       {{ form.txt  }}
       {{ form.submit  }}
      </form>
    '''


    @app.route("/", methods=['GET','POST'])
    def homepage():
        form = FORM()
        return flask.render_template_string(html,form=form)


    @app.route("/fun" , methods=['GET','POST'])
    def fun():
        form = FORM()

        if form.validate_on_submit():
            # some functions & statements
            print(form.txt.data)
        return flask.redirect('/')

    #    Run
    if __name__ == '__main__':

        app.run(host='0.0.0.0', port=5000, debug=True)

0 个答案:

没有答案