Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Semana 8: Crear y listar productos #6

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

MauBedoya
Copy link

  • Se utiliza la estructura dada en la clase de Mongoose, no la de express-generator.

  • Se crea una base de datos llamada warehouse -> products en MongoDB.

  • El "schema" se realiza en base a la tabla de producto que se realizo en Semana 9, y se aumentan entradas como "tags" y "value".

  • También se crea un "product_id" con la biblioteca "crypto" mostrada en clases.

  • Al ser value una cantidad de dinero, se utiliza el tipo de dato "Decimal128", en lugar de Number.

  • Para crear un producto, por ejemplo:

curl --request POST \
  http://localhost:3001/products \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Olive Oil Dispenser Bottle",
    "description": "Leaflai oil bottle is made of lead-free glass and is 100% healthy and environmentally friendly.",
    "tags": ["kitchen", "picnic", "home"],
    "value": 15.99
  }'
  • Para listar los productos:
http://localhost:3001/products


// List / READ all
productRouter.get("/", async (req, res) => {
const products = await productModel.find({});

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Es bueno colocarle un limite, porque si tiene cientos de datos, puede generar un error porque llena la memoria o bufer.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Totalmente cierto, lo corrijo ahora
gracias por la observación!

Copy link

@jaardila-3 jaardila-3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cordial saludo compañero, el ejercicio aunque no lo hizo con express generator, esta bien hecho y cumple con listar y crear, aprobado el PR.
En caso de que tenga tiempo, le pido el favor de revisar mi PR: #7

@MauBedoya
Copy link
Author

Cordial saludo compañero, el ejercicio aunque no lo hizo con express generator, esta bien hecho y cumple con listar y crear, aprobado el PR. En caso de que tenga tiempo, le pido el favor de revisar mi PR: #7

@jaardila-3 Hola, gracias por la revision, recién ahora pude revisar su PR y veo que esta muy bien, creo que me sera de mucha ayuda para poder practicar el uso de la plantilla de express generator.

Copy link

@therojo therojo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

El codigo esta muy limpio, y si veo que se sigue el ejemplo del tutor.

Las observaciones que hice son meras sugerencias.


// List / READ all
productRouter.get("/", async (req, res) => {
const products = await productModel.find({}).limit(10);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unicamente sugiero se agregue el sort u ordenamiento por alguna columna de la lista de productos

required: true
}
})

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aunque es un ejercicio, siempre es bueno almacenar la fecha de alta del registro, ya que cuando menos lo esperes vas a ocupar saber en que fecha se dio de alta o se modifico el registro

Esto es a criterio.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants