Stack Overflow en español Asked by Luciano on August 21, 2020
Estoy con una duda. Quiero que, en caso que se cumpla user[0].Tipo == ‘Mozo’, se redirija a la ruta ‘mozo’, ya que en esa URL tengo varias utilidades que necesito poder accesarlas facilmente, en vez de tener que iniciar sesion para poder usar las funcionalidades..
Con el codigo como está, se ejecuta la URL login_incorrecto, cuando en realidad los datos que estoy introduciendo son los del mozo y deberia entrar. Que tendria que cambiar para que funcione?
def bienvenida():
if request.method == 'POST':
try:
if request.form['DNI'] and request.form['Clave']:
user= Usuarios.query.filter_by(DNI= request.form['DNI'])
contrasena= hashlib.md5(bytes(request.form['Clave'], encoding='utf-8'))
if contrasena.hexdigest() == user[0].Clave and user:
if user[0].Tipo == 'Mozo':
self.mozo()
else:
return render_template('cocinero.html')
else:
return render_template('login_incorrecto.html')
except:
return render_template('login_incorrecto.html')
@app.route('/mozo', methods= ['POST', 'GET'])
def mozo(self):
return render_template('mozo.html')
Usas la funcion redirect
# La importas desde flask
# from flask import redirect
def bienvenida():
if request.method == 'POST':
try:
if request.form['DNI'] and request.form['Clave']:
user= Usuarios.query.filter_by(DNI= request.form['DNI'])
contrasena= hashlib.md5(bytes(request.form['Clave'], encoding='utf-8'))
if contrasena.hexdigest() == user[0].Clave and user:
if user[0].Tipo == 'Mozo':
self.mozo()
redirect("/mozo")
else:
return render_template('cocinero.html')
else:
return render_template('login_incorrecto.html')
except:
return render_template('login_incorrecto.html')
@app.route('/mozo', methods= ['POST', 'GET'])
def mozo(self):
return render_template('mozo.html')
Correct answer by Pablochaches on August 21, 2020
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP