Introducci贸n

1

驴Ya terminaste el Curso de NestJS: Programaci贸n Modular?

2

Platzi Store: presentaci贸n del proyecto e instalaci贸n

Database

3

C贸mo instalar Docker para este proyecto

4

Configuraci贸n de PostgresSQL en Docker

5

Explorando postgres con interfaces gr谩ficas y terminal

6

Integraci贸n de node-postgres con NestJS

7

Conexi贸n como inyectable y ejecutando un SELECT

8

Usando variables de ambiente

TypeORM

9

驴Qu茅 es un ORM? Instalando y configurando TypeORM Module

10

Creando tu primera entidad

11

TypeORM: active record vs. repositories

12

Crear, actualizar y eliminar

13

Cambiar a Mysql demo (opcional)

Migraciones

14

Sync Mode vs. Migraciones en TypeORM

15

Configurando migraciones y npm scripts

16

Corriendo migraciones

17

Modificando una entidad

Relaciones

18

Relaciones uno a uno

19

Resolviendo la relaci贸n uno a uno en el controlador

20

Relaciones uno a muchos

21

Resolviendo la relaci贸n uno a muchos en el controlador

22

Relaciones muchos a muchos

23

Resolviendo la relaci贸n muchos a muchos en el controlador

24

Manipulaci贸n de arreglos en relaciones muchos a muchos

25

Relaciones muchos a muchos personalizadas

26

Resolviendo la relaci贸n muchos a muchos personalizada en el controlador

Consultas

27

Paginaci贸n

28

Filtrando precios con operadores

29

Agregando indexadores

30

Modificando el naming

31

Serializar

Migraci贸n a NestJS 9 y TypeORM 0.3

32

Actualizando Dependencias para NestJS 9

33

Cambios en TypeORM 0.3

34

Migraciones en TypeORM 0.3

Pr贸ximos pasos

35

C贸mo solucionar una referencia circular entre m贸dulos

36

Contin煤a con el Curso de NestJS: Autenticaci贸n con Passport y JWT

Crea una cuenta o inicia sesi贸n

隆Contin煤a aprendiendo sin ning煤n costo! 脷nete y comienza a potenciar tu carrera

Explorando postgres con interfaces gr谩ficas y terminal

5/36
Recursos
# docker-compose.yml
version: '3.3'

services:
  postgres:
    image: postgres:13
    environment:
     - POSTGRES_DB=my_db
     - POSTGRES_USER=root
     - POSTGRES_PASSWORD=123456
    ports:
      - '5432:5432'
    volumes:
      - ./postgres_data:/var/lib/postgresql/data

  pgadmin: 馃憟 add pgadmin
    image: dpage/pgadmin4
    environment:
     - [email protected]
     - PGADMIN_DEFAULT_PASSWORD=root
    ports:
      - "5050:80"
docker ps
docker inspect ID
CREATE TABLE tasks (
	id serial PRIMARY KEY,
	title VARCHAR ( 255 ) NOT NULL,
	completed boolean DEFAULT false
);

Aportes 18

Preguntas 5

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

A la hora de crear el server en pgAdmin en vez de poner el IP podemos ingresar el nombre de servicio (el de docker compose)

Host name/ address: postgres

Un software bueno para gesionar bases de datos es dbeaver tiene la capacidad de gestionar diferentes motores de bases de datos.
Una tool muy util!

Para configurar solo ponen localhost, el puerto, usuario y pass.

https://dbeaver.io/

Crear un servidor en pgAdmin

// En en el navegador
localhost:5050/browser

// Crear un servidor
Object> create > server

// create-server
En general:
my_db

En connection:
Host: la ip que del conentedor postgres
username: root
password: 123456

docker compose up -d pgadmin

docker facilita mucho el trabajo

Mi docker-compose.yml utilizando variables de entorno ```js version: '3.3' services: postgres: image: postgres:13 env_file: - .env ports: - '5432:5432' volumes: - ./postgres_data:/var/lib/postgresql/data pgadmin: image: dpage/pgadmin4 env_file: - .env ports: - '5050:80' ```version: '3.3' services:聽 postgres:聽 聽 image: postgres:13聽 聽 env\_file:聽 聽 聽 - .env聽 聽 ports:聽 聽 聽 - '5432:5432'聽 聽 volumes:聽 聽 聽 - ./postgres\_data:/var/lib/postgresql/data 聽 pgadmin:聽 聽 image: dpage/pgadmin4聽 聽 env\_file:聽 聽 聽 - .env聽 聽 ports:聽 聽 聽 - '5050:80'
Estoy obteniendo el siguiente error, alguien tiene idea de porque? Segui el video tal cual y cuando ejecuto npm run start:dev pasa lo siguiente: C:\Users\Usuario\Desktop\Node\NestProjects\nest-api\node\_modules\pg-protocol\src\parser.ts:369 name === 'notice' ? new NoticeMessage(length, messageValue) : new DatabaseError(messageValue, length, name) ^ error: la autentificaci锟絥 password fall锟 para el usuario 锟[email protected]锟 at Parser.parseErrorMessage (C:\Users\Usuario\Desktop\Node\NestProjects\nest-api\node\_modules\pg-protocol\src\parser.ts:369:69)
yo uso dbeaver como admin grafico para las bd, tiene una version community, compatible con varios motores de base de datos.

Crear un servidor en pgAdmin // En en el navegador localhost:5050/browser // Crear un servidor Object> create > server // create-server En general: my_db En connection: Host: la ip que del conentedor postgres username: root password: 123456

Tambien pueden poner lo siguiente en la url

host.docker.internal

grandioso!

Good Class!!

La ip del servicio sera siempre la misma?

Les recomiendo el siguiente recurso para administrar sus DBs.

https://dbeaver.io/

Es muy util, asi pueden centralizar todas las DBs.

Siguiendo los comandos del profesor no encontraba la bd, se soluciono con este comando simplificado:

psql my_db

Listo!

馃槸

En lugar de buscar la ip pueden usar en nombre del servicio y el puerto interno definidos en el archivo de compose.

Dado que pgadmin pertenece al mismo compose, puede resolver internamente la ip del servicio.

馃憦