ホーム>source

現在、送信ボタンを「page1」ページにリンクしようとしていますが、悪いリクエストエラーが発生しています。元々、問題はメソッドのPOST部分に関係していると思っていましたが、これを修正する方法が明確ではありませんでした問題、これをより正確な方法でまとめるために、私は、下の送信ボタンを使用してPAGEからPAGE1に到達しようとしていますが、

"要求の形式が正しくありません ブラウザ(またはプロキシ)は、このサーバーが理解できない要求を送信しました。」

View.py

@expose('/page', methods=['GET', 'POST'])
@appbuilder.app.route('/page', methods=['GET', 'POST'])
def page(self):
    if request.method == 'POST':
        bucket = request.form['bucket']
        session['bucket'] = bucket
        return redirect(url_for('view.files'))
    else:
        return render_template(
            'x.html',
            base_template=appbuilder.base_template,
            appbuilder=appbuilder
        )
@expose('/page1', methods=['GET', 'POST'])
@appbuilder.app.route('/page1', methods=['GET', 'POST'])
def page1(self):
    if request.method == 'POST':
        bucket = request.form['bucket']
        session['bucket'] = bucket
        return redirect(url_for('view.files'))
    else:
        buckets = get_buckets_list()
        return render_template(
            'x1.html',
            base_template=appbuilder.base_template,
            appbuilder=appbuilder,
            buckets=buckets
        )

HTMLページ

           <td>
                <form class="select-bucket" action="{{ url_for('view.page1')}}" method="POST">
                    <button type="submit" name="submit" value="submit">Submit</button>
                </form>
            </td>

あなたの答え
  • 解決した方法 # 1

    def page(self) 、 あなたが持っている:

       return redirect(url_for('view.files'))
    
    

    そのはず

       return redirect(url_for('page1'))
    
    

    あなたの page1 を指します  関数。

    からのソリューション: https://teamtreehouse.com/community/flask-redirect-vs-redirecturlfor

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ javascript - Reactの中かっこ内のかっこ