def register(): """ Registration controller. Presents the registration view and handles registration requests. Returns: obj: Either render_template or redirect """ if request.method == 'POST': error = None try: # Get account singleton and try register user account = Account() user = account.register(request) except Exception as err: # Registration error to be flashed error = err if error: flash(str(error)) else: # Registration successful so redirect flash("Please login to get started!") return redirect(url_for('account.login')) return render_template('account/register.html')