IIC2513-2021-2 / project

Repositorio oficial para el proyecto del curso IIC2513, período 2021-2
32 stars 1 forks source link

[Entrega 1] Uso de sequelize dentro de un .html.ejs #3

Open mc-cari opened 2 years ago

mc-cari commented 2 years ago

Hola, se puede usar por ejemplo <% ctx.orm.model.findBy()%> dentro de un .html.ejs o hay alguna otra forma de hacerlo? ya que no siempre se sabe cual otro modelo se necesita de antemano.

LeoMo-27 commented 2 years ago

Hola! Desconozco si se pueden hacer llamados asincronos dentro de archivos ejs (la funcion findBy() de sequelize es asincrona), pero de cualquier manera no deberias hacerlo en caso de ser posible. La idea de estos archivos es simplemente mostrar la información de las variables que se les entregó mediante el metodo render de Koa, por lo que es importante tener claro de antemano todos los datos que vas a requerir para esa vista.

mc-cari commented 2 years ago

ya gracias.

sivicencio commented 2 years ago

Hola. Complementado la respuesta de @LeoMo-27, si no saben de antemano los datos a utilizar en la vista es porque "algo falta". Para la E1 inicialmente no debiesen tener este problema, pues como estarán tratando con recursos "simples", siempre podrán acceder a los datos desde la ruta.

Sin embargo, si están incluyendo asociaciones (que podría ser parte de la banda de nota "A"), existe una manera de hacerlo desde las rutas que será explicado en las siguientes cápsulas (que serán publicadas el martes 28).

mc-cari commented 2 years ago

Hola, gracias por el complemento, en ese caso estoy en las asociaciones, pero después de ver las capsulas, no se mostro un ejemplo de mi caso, por ejemplo con albumes y artistas, quisiera para una lista de albumes, mostrar el nombre de su dueño (artista), en este caso se complica ya que para cada uno hay un distinto dueño y no los puedo traer de antemano para cada album.

LeoMo-27 commented 2 years ago

Hola! Te recomiendo leer la parte de Eager Loading de la documentación de sequelize (https://sequelize.org/master/index.html). Eso te dara una idea mas clara de como abordarlo.

sivicencio commented 2 years ago

@mc-cari En la cápsula 9 se muestra precisamente lo que necesitas.

mc-cari commented 2 years ago

buena gracias