2015-08-09 77 views
0

以下question提供此問題的背景表單提交問題與認證

我張貼表單數據到Flask URL。 HTML表單看起來像這樣。

{% extends "AdminMaster.html" %} {% block title %}Create New Application{% endblock %} {% block page %}Create New Application{% endblock %} {% block head %} {{ super() }} {% endblock %} {% block content %} 
 
<div class="container"> 
 
    <div class="page-header"> 
 
    <h1>Create a new Application</h1> 
 
    </div> 
 
    <form action="/xxxx/xdf"> 
 
    <div class="form-group"> 
 
     <label for="txtApplicationName">Application Name</label> 
 
     <input type="text" class="form-control" id="txtApplicationName" placeholder="Application Name"> 
 
    </div> 
 
    <div class="form-group"> 
 
     <label for="txtApplicationCategoryName">Application Category Name</label> 
 
     <input type="text" class="form-control" id="txtApplicationCategoryName" placeholder="Application Category"> 
 
    </div> 
 
    <button type="submit" class="btn btn-primary"> 
 
     Add New Category 
 
    </button> 
 
    </form> 
 
</div> 
 
{% endblock %}

我有以下瓶路線處理後。

@admin_routes.route('/xxxx/xdf', methods=['GET', 'POST']) 
@authenticate_admin 
def create_new_application(): 
    app_name = request.args[0] 
    return redirect('/xxxx') 

問題是,我每次發帖子時都會收到400錯誤的請求。我不知道爲什麼?

enter image description here

+0

你能分享導致壞請求的回溯嗎? – dirn

+0

剛剛添加了堆棧跟蹤。 –

回答

1

request.argsMultiDict。這不是一個序列。你可以用鍵來訪問它的元素,而不是索引。

request.args['some_name'] 

這裏'some_name'匹配表單元素的name屬性。

<input type="text" name="some_name"> 

沒有提供name屬性,瀏覽器將不包含該字段在http GET或POST請求中。

 <input type="text" name="????" class="form-control" id="txtApplicationCategoryName" placeholder="Application Category"> 
+0

感謝所以表單提交,但我仍然得到400 –

+0

我剛剛添加堆棧跟蹤到問題。謝謝 –

+0

這是記錄信息,而不是回溯。請分享完整的回溯以及來自'module.py'的第812行。 – dirn