[英]Python beginner question - trying to understand return statement
基本上,我想在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)
我認為您在某處丟失了一些格式。 第一個return語句應縮進足夠遠,使其位於if塊內,第二個return語句應與if塊對齊。 如果驗證成功,則返回元組create_user, redirect(url_for('loggedin.html'))
,否則返回render_template('get-started.html', form=form)
。
您的縮進是錯誤的; 你要:
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
。
您還記得導入請求嗎? 不確定您使用的是什么,但對我來說它看起來像Flask,如果是,那是“來自燒瓶導入請求”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.