烧瓶 - 表单提交时出现错误请求错误
问题描述:
我正在尝试使用烧瓶提交HTML表单。但是,它给了我错误的请求错误(400)。我无法弄清楚是什么问题。 这里是我的HTML代码:烧瓶 - 表单提交时出现错误请求错误
<div class="modal-body">
<!-- content goes here -->
<form class="add-user-form" name="add-user-form">
<div class="form-group" >
<label for="username">Email address</label>
<input type="email" class="form-control" name="username" id="username" placeholder="Enter email">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" class="form-control" name="password" id="password" placeholder="Password">
</div>
<div class="form-group">
<label for="brandName">Brand Name</label>
<input type="text" class="form-control" name="brandName" id="brandName" placeholder="Brand Name">
</div>
<div class="form-group">
<label for="status">Status</label>
<input type="text" class="form-control" name="status" id="status" placeholder="Status">
</div>
<div class="form-group">
<label for="msgDashboard">Message on Dashboard</label>
<input type="text" class="form-control" name="msgDashboard" id="msgDashboard" placeholder="Message on Dashboard">
</div>
<div class="form-group">
<label for="reportAccess">Report Access</label>
<input type="text" class="form-control" name="reportAccess" id="reportAccess" placeholder="Report Access URL">
</div>
<button type="submit" class="btn btn-default add-user" name="add-user">Submit</button>
</form>
</div>
这里去JQuery的部分:
$('.add-user').click(function(event) {
event.preventDefault();
$.ajax({
url: '/add-user',
data: $('.add-user-form').serialize(),
type: 'POST',
success: function(response) {
console.log(response);
window.location.href = 'dashboard';
},
error: function(error) {
console.log(error);
}
});
});
这是我的瓶代码:
@app.route('/add-user', methods=['POST'])
def add_dashboard():
if 'username' in session:
user_info = DashboardUser(session['username'], db)
user_info.add_user(request.form['username'], request.form['password'],
request.form['brandName'], request.form['parentCompany'],
request.form['status'])
user_info.add_dashboard(request.form['username'], request.form['reportAccess'], request.form['msgDashboard'])
return "Success"
任何人可以帮助我在这里做错了什么?
答
好吧,我认为你的问题是你只是返回一个字符串“成功”,而不是返回某种真实的Web响应。
您应该使用瓶make_response
方法:
from flask import make_response
@app.route('/add-user', methods=['POST'])
def add_dashboard():
if 'username' in session:
user_info = DashboardUser(session['username'], db)
user_info.add_user(request.form['username'], request.form['password'],
request.form['brandName'], request.form['parentCompany'],
request.form['status'])
user_info.add_dashboard(request.form['username'], request.form['reportAccess'], request.form['msgDashboard'])
return make_response("Success")
在万亩烧瓶代码,我所提到的路线。 –
它的400不是404,所以我很确定路线存在。 @raushankumar –
如果为'add_dashboard'函数添加其他情况会发生什么?你看到控制台中记录的错误吗? – JacobIRR