POST 对 Flask 蓝图的请求 api 不工作

POST request to Flask Blueprint api not working

我正在尝试执行表单 POST 请求。在路由 api 函数处收到请求,但 POST 条件未执行。

代码

<form class="pt-2 pb-4" action = "{{ url_for('data_sources_api.testfn') }}" method = "POST">
    <div class="row">
        <div class="col-md-4 mb-3">
            <label for="url" class="form-label">URL</label>
            <input type="text" class="form-control" id="url" name="url" aria-describedby="emailHeurllp"
                placeholder="Enter new events top domain source url">
        </div>
        <div class="col-md-4 mb-3">
            <label for="name" class="form-label">Name</label>
            <input type="text" class="form-control" id="name" name="name" placeholder="Enter Organization Name">
        </div>
        <div class="col-md-12">
            <button type="button" class="btn btn-secondary mr-2" value="submit" name = "submit">Submit</button>
        </div>
    </div>
</form>

烧瓶代码

@data_sources_api.route('/login/test', methods=["GET", "POST"])
def testfn():
    # Check if user is loggedin
    if loggedin():
        # User is loggedin, render the home page
        if request.method == 'POST':
            print("POST Request Received")
            result = request.form
        return render_template('users/data-sources.html', role=session['role'])
    return redirect(url_for('account_api.login'))

当我点击提交按钮时收到的请求是 GET 而不是 POST :(

提前致谢

我认为问题出在按钮上。将按钮替换为 input type="submit":

<input type="submit" value="Submit">

Here是Django形式的例子