def login(): erros = campos_presentes_na_requisicao('email senha') if erros: return render_template('usuario/login.html', erros=erros), 400 email = request.form.get('email') senha = request.form.get('senha') try: usuario = Usuario.get(email=email) if usuario.hash_senha == senha_hasheada(senha): session['usuario'] = model_to_dict(usuario) flash('Seja bem-vindo, {usuario}.'.format( usuario=usuario.nome.split()[0])) return redirect(url_for('pagina_inicial')) else: return render_template('usuario/login.html', erros=[Erro('Senha inválida.')]), 400 except Usuario.DoesNotExist: return render_template('usuario/login.html', erros=[{ 'mensagem': 'Usuário não encontrado.' }]), 404
def usuario(): if 'usuario' in session: return Usuario.get(Usuario.id == session['usuario']['id']) else: return None