I’m trying to develop a template that adapts itself after user input using Flask. I manage to make it work, but there are too many return
statements.
if form == 'Y': return render_template("mypage.html",title = title_1, body = body_1) elif form == 'N': return render_template("mypage.html",title = title_2, body = body_2) else: return render_template("mypage.html",title = title_3, body = body_3)
Is there a way to reduce the return
statements? I tried this, but it didn’t work:
if form == 'Y': title_return = title_1, body = body_1 elif form == 'N': title_return = title_2, body = body_2 else: title_return = title_3, body = body_3 return render_template("mypage.html",title_return = title, body_return = body)
Advertisement
Answer
Your assignment in render_template
is wrong. It will be fixed like below.
if form == 'Y': title_return, body_return = title_1, body_1 elif form == 'N': title_return, body_return = title_2 body_2 else: title_return, body_return = title_3, body_3 return render_template("mypage.html",title = title_return, body = body_return)
You can create a method to reduce code. That takes input and returns title and body.