TypeError Ajax POST - Flask Python
我刚开始学习Flask和Python。我有一个简单的表单,它使用jQuery的ajax表单库进行ajax请求。这个请求会调用Python那边的一个函数,把用户添加到mongoDb数据库里。然后它会返回一个真或假的结果。
但是在返回这个真假值的时候,我遇到了一个错误:
类型错误:'bool'对象不可迭代
最近的错误追踪信息:
File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__ return self.wsgi_app(environ, start_response)
Python部分
@app.route('/signup', methods=['GET', 'POST'])
def signup():
if request.method == 'GET':
return render_template('signup.html')
if request.method == 'POST':
result = create_user(request.form["firstname"],
request.form["lastname"],
request.form["username"],
request.form["password"],
request.form["email"])
return jsonify(result)
JavaScript部分
<script type="application/javascript">
$(document).ready(function() {
// bind 'myForm' and provide a simple callback function
$('#signupform').ajaxForm(function() {
alert("Thank you for your comment!");
});
});
</script>
创建用户函数
def create_user(form_first_name, form_last_name, form_username, form_password, form_email):
user = User()
user.first_name = form_first_name
user.last_name = form_last_name
user.last_modified = datetime.now()
user.username = form_username
user.password = form_password
user.email = form_email
if user.save():
return True
else:
return False
1 个回答
0
试着返回:
return jsonify(result=result)
可以看看这个文档:http://flask.pocoo.org/docs/api/#flask.json.jsonify。
我怀疑 create_user()
这个函数返回的是一个布尔值(就是对或错),而布尔值是没有字典形式的。