‫Instructor: Acabamos de aprender mucho sobre MVC,
‫por lo que ahora refactoricemos muy rápidamente nuestro código
‫para que se ajuste un poco mejor a esa arquitectura.
‫Y en realidad ya tenemos nuestra carpeta de controladores aquí, y los
‫controladores de usuario y de recorrido en ellos, y
‫ya tenemos las rutas aquí en
‫la carpeta de rutas.
‫Entonces, realmente, lo que tenemos que hacer en este
‫video es crear una
‫carpeta de modelo y crear un modelo de recorrido allí.
‫Entonces, hagámoslo.
‫(clic) Entonces, modelos
‫y allí el tourModel.
‫js Terminemos con
‫estos tipos, así que sigamos adelante y copiemos, o cortemos
‫en realidad, este esquema y toda
‫la declaración del modelo aquí,
‫y colóquelo en el modelo de gira.
‫También querremos la importación de Mongoose aquí.
‫Muy bien, y de hecho,
‫eliminémonos por completo de este código.
‫Muy bien, esto de aquí fue solo para
‫probar, y ya no lo necesitamos.
‫Así que ha hecho su trabajo, y
‫todo lo que realmente
‫queremos hacer en este archivo aquí es conectarnos a la base de
‫datos, pero todo lo que se refiere a los
‫modelos en sí, siempre vivirá dentro de un archivo,
‫dentro de la carpeta de modelos.
‫Muy bien, ahora aquí, eslint nos dice que
‫esta variable aquí no
‫se ha utilizado, pero en realidad
‫queremos usarla porque queremos exportar el modelo de este archivo.
‫Entonces módulo. exportaciones, y esto debería
‫ser lo único que exportamos de este archivo, por lo que usamos
‫el tipo de exportación predeterminada con módulo. exporta Bien, y este es
‫nuestro modelo de recorrido muy simple que creamos en
‫nuestra última conferencia, y
‫ahora aquí lo colocamos en su propio archivo
‫independiente, y finalmente lo exportamos desde aquí.
‫Bien, ahora, ¿dónde necesitamos esta gira?
‫Entonces, en otras palabras, ¿dónde vamos
‫a crear y consultar, y eliminar y actualizar recorridos?
‫Bueno, lo haremos en el tourController, ¿verdad?
‫Así que
‫aquí mismo, sigamos adelante e importemos el modelo aquí.
‫Así que aquí en la parte
‫superior, (haciendo clic) y le estoy
‫dando exactamente el mismo nombre.
‫Así que todavía gira,
‫y ahora quiero requerir, por lo que la carpeta actual, luego
‫una carpeta hacia arriba, y
‫luego hacia abajo en la carpeta de
‫modelos, y allí, modelo de gira.
‫Bien, ahora, por supuesto, me dice que
‫no estoy usando esta variable,
‫pero no se preocupe por eso por ahora.
‫Entonces, a continuación, quiero deshacerme
‫de este lugar aquí donde realmente importamos los datos
‫como un archivo json.
‫Entonces, por supuesto, ya no necesitamos esto.
‫Esto de aquí fue solo para fines de prueba.
‫Así que deshagámonos de eso.
‫También puedes comentarlo
‫si quieres dejarlo tal vez como referencia para ti.
‫Entonces sigue adelante y comenta.
‫Luego, aquí tenemos
‫este error porque la variable que
‫acabamos de eliminar ya no está definida, así
‫que permítanme comentar este fragmento de código aquí porque,
‫nuevamente, vamos a necesitar algo similar a esto.
‫Bien, haga un recorrido, comentemos
‫todo esto aquí también solo para que no obtengamos
‫ningún error tan pronto como guardemos este archivo.
‫Entonces aquí, en realidad, podemos deshacernos,
‫bueno, de todo esto.
‫Así que ya no usaremos nada de esto.
‫Así que déjame guardar esta pieza aquí.
‫Así que lo copiaré, borraré todo
‫lo demás de esto y
‫lo guardaré aquí.
‫Todavía tenemos este
‫error, por lo que estoy comentando este código.
‫Está bien, y aquí no obtenemos ningún error.
‫Así que dejémoslo así por ahora, ¿de acuerdo?
‫Entonces, lo que hice aquí fue básicamente
‫limpiar el código que escribimos antes para no
‫depender más de los datos que teníamos
‫en el archivo json.
‫Muy bien, ahora no deberíamos tener más errores,
‫o en realidad deberíamos en esta función checkID,
‫y esta función checkID,
‫de hecho, ya no la necesitaremos, ¿de acuerdo?
‫Porque a partir de ahora vamos a
‫empezar a trabajar con los ID que vienen de MongoDB,
‫y Mongo mismo nos dará un error si
‫usamos un ID no válido, por lo
‫que esta función que tenemos aquí fue realmente
‫muy útil para mostrarte cómo El middleware
‫realmente funciona, dándote este ejemplo
‫muy práctico aquí, y más adelante en el curso,
‫la gente,
‫por supuesto, usa más middleware,
‫pero esta función en particular
‫aquí, ya no la necesitaremos.
‫Entonces, eliminémoslo, y
‫también de esta importación del sistema de archivos,
‫nuevamente, porque ya no usamos el archivo aquí.
‫Así que todavía tenemos algún error aquí.
‫Veamos qué está
‫pasando, y parece que está en las
‫rutas del tour, ¿de acuerdo?
‫Y en realidad ese
‫era el que iba a cambiar a continuación.
‫Entonces, el problema
‫aquí es que este tourController. checkID, por supuesto que
‫ya no existe porque lo
‫borramos, así que eliminemos esto también,
‫o de hecho déjeme comentarlo, ¿de acuerdo?
‫Así que ten en cuenta que
‫puedes usar esto. param funciona aquí
‫para definir el middleware de parámetros en sus propias aplicaciones, ¿de acuerdo?
‫Así que no quiero
‫que lo olvides, así que déjalo aquí en
‫tu código para que tal vez más
‫tarde, cuando vuelvas a él, sepas que está ahí, ¿de acuerdo?
‫Así que ahora lo
‫guardé y volvemos a la normalidad.
‫Así que todo volvió a funcionar, y nuestro
‫código ahora está lo suficientemente bien refactorizado para
‫que en el siguiente video
‫podamos comenzar a implementar las funciones correctas en nuestra API.
‫Básicamente, obtener todos los recorridos,
‫crear recorridos, eliminar recorridos y actualizar recorridos.
‫Entonces, una por
‫una, comenzaremos a implementar estas funciones
‫de controlador, o funciones de controlador si lo prefiere,
‫comenzando en el siguiente video.