Mi estimado, has hecho un gran trabajo en este vídeo que lo he apreciado muchísimo puesto que me ha aclarado términos y conceptos que antes no entendía… however my friend… cuando explicas, te mueves como una auténtica pulga, saltas de un tema a otro constantemente y es muy difícil seguirte; en resumidas cuentas, que deberías hacerte un Planig escrito para abordar los temas en la medida que van surgiendo: por ejemplo: bueno, ahora vamos a ver… cómo montamos nuestro servidor y para ello necesitaremos tal, tal y tal ítem, y cuando hayamos terminado de montarlo, veremos cómo efectuamos la conexión y ahora empezamos a probarlo… pero sin salirte ni abandonar el tema y moviendo el puntero más despacio para que veamos lo que haces, a fin de que no tengamos que atrasar y adelantar el vídeo tantas veces para no perdernos en esa ensalada de temas que explicas a la vez. Por lo demás me ha gustado mucho el asunto que tratas y te estoy muy agradecido porque valoro tu trabajo. Saludos desde Zaragoza (España).
Desde Ecuador. Un saludo! Buen tutorial, la explicación estuvo excelente! Me sigo motivando a progresar con tus vídeos para ser Software Developer. Tengo ciertas bases pero estoy en la práctica con proyecto propio, este tuto me ayudó a comprender más de express
Gracias Morsa🦭!!! Todavía ni termino de verlo pero ya estoy contenta... explicas todo muy claro! En general los tutoriales se dirigen hacia un solo nivel de expertise, pero tú logras hacernos avanzar a novatos y a más avanzados... Gracias y saludos 🤗
Extraordinario trabajo amigo. Me ha aclarado muchas ideas de las que tenía un concepto equivocado. Sólo una consulta ¿me vale este planteamiento para trabajar con la DB Firebird. Gracias y saludos
amigo necesito ayuda!! Me sale que el databaseService ya fue importado y tengo todo igual que vos. Nose si sera por alguna actualizacion de version de alguna dependencia que cambio la syntaxis o q pero no me deja. Ni bien puedas, si no es molestia para vos me respondes aqui y nos ponemos en contacto porfa
Hola excelentes tus videos, yo estoy aprendiendo api con Flask, y luego quiero seguir con Django, mi pregunta es, son tecnologías que tienen futuro las de Python web??. Saludos desde Chile.
3 года назад
Si flask y Django tambien son tecnologias populares :) tienen futuro ✌🏾
Muy buen video. Una pregunta, cual es la diferencia entre un query builder y un ORM? Saludos
3 года назад+2
Excelente pregunta! Me inspiré en este artículo para usar un Query Builder blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/ La gran diferencia que noto yo es que el ORM esconde más detalles de lo que sucede "por debajo" al momento de hacer consultas a la base de datos. Eso puede traer problemas cuando necesitamos hacer consultas complejas. En ese sentido, los Query Builder son mucho más transparentes, buscan mapear 1 a 1 las consultas que puedes hacer en la sintaxis SQL a metodos en el lenguaje de programación. Eso permite tener mucho más control sobre lo que estas consultando...
Nunca he usado uno, solo he usado el query builder que mostré en el video. He escuchado de sequelize y mongoose pero no se cual es el estado actualmente de éstos.
Ya pude solucionarlo, habia puesto el archivo .env en la carpeta services. Pero ahora me sale otro error y es cuando hago la peticion post, no me reconoce el nombre de mi base de datos
me sale el error que la tabla no existe ..¿Me podrías ayudar?
2 года назад
Podrían ser muchos factores, chequea que tienes el servidor mysql corriendo y que la tabla existe, tienes workbench instalado? Así puedes fácilmente abrir la tabla y ver que todo está en orden.
Excelente video, superbien explicado!!!. Quisiera agregar las demás opciones del CRUD, como actualizar y borrar. Tendrías un ejemplo?? Este es mi intento de actualizar (código de databaseService.js) const actualizarUsuario = ({correoUsu, claveUsu, nombreUsu, apellidoUsu, idUsu}) => { return knex(table) .where(idUsu, '=', idUsu) .update({ correoUsu: correoUsu, claveUsu: claveUsu, nombreUsu: nombreUsu, apellidoUsu: apellidoUsu }); // Retorna un Promise (Promesa) }; y en routes.js: // Actualizar usuario app.put('/updUsu/:idUsu', (req, res) => { const usuario = req.body; console.log(usuario); databaseService.actualizarUsuario(usuario) .then(() => { res.json({"MENSAJE": "Usuario actualizado"}); }).catch(e => { res.status(500).json(e); }) }); Pero obtengo error: "code": "ER_BAD_FIELD_ERROR", "errno": 1054, "sqlMessage": "Unknown column '4' in 'where clause'", "sql": "update `usuarios` set `correoUsu` = 'jack1@gmail.com', `claveUsu` = '1234561', `nombreUsu` = 'Carlos1', `apellidoUsu` = 'Perez1' where `4` = '4'"
2 года назад+1
Tu where en el return, el primer parametro lo esta interpretando como 4 y deberia ser idUsu, ponlo entre comillas para que lo lea como string, 'idUsu', '=', idUsu
Mi estimado, has hecho un gran trabajo en este vídeo que lo he apreciado muchísimo puesto que me ha aclarado términos y conceptos que antes no entendía… however my friend… cuando explicas, te mueves como una auténtica pulga, saltas de un tema a otro constantemente y es muy difícil seguirte; en resumidas cuentas, que deberías hacerte un Planig escrito para abordar los temas en la medida que van surgiendo: por ejemplo: bueno, ahora vamos a ver… cómo montamos nuestro servidor y para ello necesitaremos tal, tal y tal ítem, y cuando hayamos terminado de montarlo, veremos cómo efectuamos la conexión y ahora empezamos a probarlo… pero sin salirte ni abandonar el tema y moviendo el puntero más despacio para que veamos lo que haces, a fin de que no tengamos que atrasar y adelantar el vídeo tantas veces para no perdernos en esa ensalada de temas que explicas a la vez. Por lo demás me ha gustado mucho el asunto que tratas y te estoy muy agradecido porque valoro tu trabajo. Saludos desde Zaragoza (España).
Excelente canal "Código Morsa". gracias por el conocimiento que compartes, saludos desde Ciudad de México
Buenísimo video, estoy viejito aprendiendo desarrollo, pero con tus videos se ha hecho menos árido el camino.
Sigue así, me alegro poder ayudar.
Que bien explicas, se nota experiencia, se nota trabajo duro igual. Gracias de verdad, buen videooooo, from Chile
Muchas gracias por el apoyo.
Desde Ecuador. Un saludo! Buen tutorial, la explicación estuvo excelente!
Me sigo motivando a progresar con tus vídeos para ser Software Developer.
Tengo ciertas bases pero estoy en la práctica con proyecto propio, este tuto me ayudó a comprender más de express
Gracias Morsa🦭!!! Todavía ni termino de verlo pero ya estoy contenta... explicas todo muy claro! En general los tutoriales se dirigen hacia un solo nivel de expertise, pero tú logras hacernos avanzar a novatos y a más avanzados...
Gracias y saludos 🤗
Muchas gracias por el apoyo!
Muy buena explicación para los apasionados en este camino, animo bro!
Me gusta muchísimo la forma de explicar los temas. Te voy a recomendar. Saludos!
Muchas gracias por el apoyo!
Desde Colombia, muchas gracias por compartir tus conocimientos 🤙🏽🤙🏽
excelente video, podrias explicar de como tu api ahora la pasa a front end para que interactuen los usuarios, que recomiendas?? gracias
Extraordinario trabajo amigo. Me ha aclarado muchas ideas de las que tenía un concepto equivocado. Sólo una consulta ¿me vale este planteamiento para trabajar con la DB Firebird. Gracias y saludos
Muchas gracias por tus tutoriales, realmente son geniales!
eres el maximo
Muy buen video! gracias por la clase crack
Joya.
Como se usa async awuit en la promesa
Buen video, muy bien explicado. Saludos!
excelente video, estoy estudiando programación y me gustaría ver el crud completo pero con procedimientos almacenados. Saludos
Muy bueno el video , bien explicado , pero el recuadro de tu figura no permite ver bien todo. Igual brillante..!!
twe amo
amigo necesito ayuda!! Me sale que el databaseService ya fue importado y tengo todo igual que vos. Nose si sera por alguna actualizacion de version de alguna dependencia que cambio la syntaxis o q pero no me deja. Ni bien puedas, si no es molestia para vos me respondes aqui y nos ponemos en contacto porfa
Genial el vídeo
Hola excelentes tus videos, yo estoy aprendiendo api con Flask, y luego quiero seguir con Django, mi pregunta es, son tecnologías que tienen futuro las de Python web??. Saludos desde Chile.
Si flask y Django tambien son tecnologias populares :) tienen futuro ✌🏾
Hola!, al momento de hacer el post en Postman me arroja esto {
"name": "KnexTimeoutError"
}
Se puede usar procedimientos almacenados?
Muy buen video. Una pregunta, cual es la diferencia entre un query builder y un ORM? Saludos
Excelente pregunta! Me inspiré en este artículo para usar un Query Builder blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/
La gran diferencia que noto yo es que el ORM esconde más detalles de lo que sucede "por debajo" al momento de hacer consultas a la base de datos. Eso puede traer problemas cuando necesitamos hacer consultas complejas. En ese sentido, los Query Builder son mucho más transparentes, buscan mapear 1 a 1 las consultas que puedes hacer en la sintaxis SQL a metodos en el lenguaje de programación. Eso permite tener mucho más control sobre lo que estas consultando...
Interesante.
Que ORM recomiendan para node?
Nunca he usado uno, solo he usado el query builder que mostré en el video. He escuchado de sequelize y mongoose pero no se cual es el estado actualmente de éstos.
Buneas! el dotenv no me lee las variables de entorno, no sé qiue puede estar pasando la verdad, ya busqué en internet pero nada
Ya pude solucionarlo, habia puesto el archivo .env en la carpeta services. Pero ahora me sale otro error y es cuando hago la peticion post, no me reconoce el nombre de mi base de datos
Ya lo solucioné!
@@tomascosta6292 Que bueno es cuando uno se resuelve sus propias dudas jaja, felicitaciones y a seguir dándole.
@ muy bueno tu canal la verdad, seguí así crack!
Hola me interesa aprender typescript en uno de tus videos
Considerado! Lo anoto para un futuro próximo.
me sale el error que la tabla no existe ..¿Me podrías ayudar?
Podrían ser muchos factores, chequea que tienes el servidor mysql corriendo y que la tabla existe, tienes workbench instalado? Así puedes fácilmente abrir la tabla y ver que todo está en orden.
@ ya solucioné muchas gracias!!.... talvez tiene un vídeo explicando como enviar datos de un formulario... recién estoy aprendiendo a programar
@@cfstudio-cristhianfernandez Eso dale con todo vas por el buen camino, lo de formularios aún no he hecho tutoriales pero lo consideraré.
#codigomorsa
y si mi base de datos es MSSQL?
Solo tendrías que cambiar la implementación del servicio, el resto de los componentes debería ser capaz de usar esa interfaz sin problemas.
@ un tutorial con MSSQL sería una gran ayuda 😊
enseña super mal
Excelente video, superbien explicado!!!.
Quisiera agregar las demás opciones del CRUD, como actualizar y borrar.
Tendrías un ejemplo?? Este es mi intento de actualizar (código de databaseService.js)
const actualizarUsuario = ({correoUsu, claveUsu, nombreUsu, apellidoUsu, idUsu}) => {
return knex(table)
.where(idUsu, '=', idUsu)
.update({
correoUsu: correoUsu,
claveUsu: claveUsu,
nombreUsu: nombreUsu,
apellidoUsu: apellidoUsu
}); // Retorna un Promise (Promesa)
};
y en routes.js:
// Actualizar usuario
app.put('/updUsu/:idUsu', (req, res) => {
const usuario = req.body;
console.log(usuario);
databaseService.actualizarUsuario(usuario)
.then(() => {
res.json({"MENSAJE": "Usuario actualizado"});
}).catch(e => {
res.status(500).json(e);
})
});
Pero obtengo error:
"code": "ER_BAD_FIELD_ERROR",
"errno": 1054,
"sqlMessage": "Unknown column '4' in 'where clause'",
"sql": "update `usuarios` set `correoUsu` = 'jack1@gmail.com', `claveUsu` = '1234561', `nombreUsu` = 'Carlos1', `apellidoUsu` = 'Perez1' where `4` = '4'"
Tu where en el return, el primer parametro lo esta interpretando como 4 y deberia ser idUsu, ponlo entre comillas para que lo lea como string, 'idUsu', '=', idUsu