簡體   English   中英

將按鈕鏈接到Flask-Appbuilder中的頁面

[英]linking a button to page in Flask-Appbuilder

目前,我正在嘗試將“提交”按鈕鏈接到“ 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>

def page(self) ,您具有:

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

它應該是

    return redirect(url_for('page1'))

因此它指向您的page1函數。

解決方案來自: https : //teamtreehouse.com/community/flask-redirect-vs-redirecturlfor

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM