基本上我想在register函数中返回create_user的内容以用于保存到我的数据库。我是一个完全的初学者。我误解了什么?
def register():
form = SignupForm(request.form)
if request.method == 'POST' and form.validate():
create_user = ({'username' : form.username.data, 'email' : form.email.data,
'password': form.password.data})
flash('Thanks for registering')
return create_user, redirect(url_for('loggedin.html'))
return render_template('get-started.html', form=form)
create_user = register()
doc_id, doc_rev = db.save(create_user)
答案 0 :(得分:4)
我认为你在某个地方丢失了一些格式。第一个return语句应缩进得足够远,以至于它位于if块内,第二个return语句应该与if块对齐。如果验证成功,则返回元组create_user, redirect(url_for('loggedin.html'))
,否则返回render_template('get-started.html', form=form)
。
答案 1 :(得分:3)
你的缩进是错误的;你想要的:
def register():
form = SignupForm(request.form)
if request.method == 'POST' and form.validate():
create_user = ({'username' : form.username.data, 'email' : form.email.data,
'password': form.password.data})
flash('Thanks for registering')
return create_user, redirect(url_for('loggedin.html'))
return render_template('get-started.html', form=form)
缩进描述代码块。您需要在函数内缩进所有以显示它是与该函数对应的代码,以及if
内的所有内容。您没有缩进if
。
答案 2 :(得分:1)
你还记得导入请求吗?不知道你在使用什么,但对我来说它看起来像Flask,如果是这样,那就是'来自烧瓶导入请求'。