1
1
from flask import Flask , render_template , request , redirect , url_for , session
2
2
from lista_restaurantes import todos_restaurantes
3
3
4
+ #Anotaciones:
5
+ # Implementar home especifico para el usuario
6
+
4
7
app = Flask (__name__ )
5
8
6
9
app .secret_key = "clave_secreta"
7
10
# Configuración de la clave secreta para la sesión
8
11
9
- @app .route ("/" )
12
+ @app .route ("/" ) # Ruta para la página de inicio
10
13
def index ():
11
14
return render_template ("index.html" )
12
15
13
16
@app .route ("/home" , methods = ["GET" , "POST" ])
17
+ # Ruta para la pagina principal del usuario
14
18
def home ():
15
19
tipo = request .form .get ("tipo_comida" )
16
20
buscar = request .form .get ("busqueda" )
21
+ # Obtener los parámetros
17
22
18
23
restaurantes_filtrados = todos_restaurantes
19
24
20
25
if tipo and tipo != "Todos" :
21
26
restaurantes_filtrados = [r for r in restaurantes_filtrados if r .get ("tipo" ) == tipo ]
27
+ # Filtrar por tipo de comida
22
28
23
29
if buscar :
24
30
buscar_lower = buscar .lower ()
25
31
restaurantes_filtrados = [r for r in restaurantes_filtrados if buscar_lower in r ["nombre" ].lower ()]
32
+ # Filtrar por texto de búsqueda
26
33
27
34
return render_template ("home.html" , restaurantes = restaurantes_filtrados , tipo_seleccionado = tipo or "Todos" , texto_busqueda = buscar or "" )
28
35
29
36
@app .route ("/restaurante/<nombre>" )
30
37
def restaurante (nombre ):
31
38
restaurante = next ((r for r in todos_restaurantes if r ["nombre" ] == nombre ), None )
39
+ # Buscar el restaurante por nombre
32
40
if not restaurante :
33
41
return "Restaurante no encontrado" , 404
34
42
return render_template ("restaurante.html" , restaurante = restaurante )
@@ -40,6 +48,7 @@ def agregar_pedido():
40
48
41
49
if "carrito" not in session :
42
50
session ["carrito" ] = []
51
+ # Inicializar el carrito si no existe
43
52
44
53
session ["carrito" ].append ({"plato" : plato , "precio" : precio })
45
54
session .modified = True
@@ -57,6 +66,7 @@ def eliminar_pedido(index):
57
66
if "carrito" in session and 0 <= index < len (session ["carrito" ]):
58
67
del session ["carrito" ][index ]
59
68
session .modified = True
69
+ # Eliminar un plato del carrito por índice
60
70
return redirect (url_for ("pedido" ))
61
71
62
72
@app .route ("/crear_cuenta" , methods = ["GET" , "POST" ])
@@ -77,9 +87,12 @@ def crear_cuenta():
77
87
78
88
@app .route ("/login" , methods = ["GET" , "POST" ])
79
89
def login ():
90
+ error = ""
80
91
if request .method == "POST" :
81
- return redirect (url_for ("home" ))
82
- return render_template ("login.html" )
92
+ if request .form ["correo" ] and request .form ["password" ] != None :
93
+ return redirect (url_for ("home" ))
94
+ error = "Por favor, ingresa tus credenciales"
95
+ return render_template ("login.html" , error = error )
83
96
84
97
@app .route ("/cuenta" , methods = ["GET" , "POST" ])
85
98
def cuenta ():
0 commit comments