Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

¿Qué es un ORM? Instalando y configurando TypeORM Module

9/33
Recursos
 npm install --save @nestjs/typeorm typeorm
// src/database/database.module.ts

import { TypeOrmModule } from '@nestjs/typeorm'; // 👈 import

@Global()
@Module({
  imports: [
    TypeOrmModule.forRootAsync({ // 👈 use TypeOrmModule
      inject: [config.KEY],
      useFactory: (configService: ConfigType<typeof config>) => {
        const { user, host, dbName, password, port } = configService.postgres;
        return {
          type: 'postgres',
          host,
          port,
          username: user,
          password,
          database: dbName,
        };
      },
    }),
  ],
  ...
  exports: ['API_KEY', 'PG', TypeOrmModule], // 👈 add in exports
})
export class DatabaseModule {}

Aportes 9

Preguntas 7

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

  • Que hace? Capa extra que le ingresamos a nuestra app
  • Se encarga de la conexion y todo en base a modelos y entidades
  • En esas entidades definidos propiedades y metodos.
  • No vamos a realizar codigo sql para ejecutar las operaciones. Pero el ORM nos permite realizar operaciones y consultas complejas.
  • Tambien nos abstrae la conexion, asi que nos podemos conectar a diferentes motores.
  • Hay dos famosos ORM que se utilizan y son:
  • Sequelize
  • TypeORM

Alguien con una alma generosa, me pueda ayudar :’(

Al retornar el objeto de configuración (return {...}) de TypeOrmModule me daba el siguiente error

 Types of property 'type' are incompatible.
          Type '"postgres"' is not assignable to type '"aurora-data-api"'.

Lo solucioné con:

return Object.assign({ ... })

Pero al final no se uso esa conexión mediante TypeORM, porque los servicios inyectan es “PG” y como el profe no borró el provider (en database.module.ts tiene la conexión mediante pg y además la de TypeORM pero no cambio la inyección en los servicios) por eso no le salio ningún error y siguió funcionando porque sigue con “PG”

Para los que tengan problemas al instalar las dependencias en el minuto 3:43, me funcionó instalando las versiones que salen en el video:

npm i --save [email protected]0.2.31 @nestjs/[email protected]7.1.5

como indica en la docu, ahora todo esta en el paquete typeorm

npm install --save typeorm

y el nombre del paquete

import { createConnection } from 'typeorm';

ya no esta disponible typeOrm Module !

aca hay como hacerlo https://docs.nestjs.com/recipes/sql-sequelize

Hola a todos! 😄
Al principio a mí me costó bastante entender el concepto de lo que es un object-relational mapper (un ORM), así que aquí les dejo una definición que escribí después de tanto investigar y leer diferentes artículos.
.

Primero que todo, para entender este concepto hay que establecer una definición entre object-relational mapping y object-relational mapper, ya que son conceptos bien diferentes. object-relational mapping es una técnica de programación que nos ayuda a manipular y consultar la información almacenada dentro de una base de datos usando programación orientada a objetos, mientras que un object-relational mapper es una librería o módulo que utiliza la técnica anteriormente mencionada y encapsula el código necesario para manipular o consultar la base de datos, de forma que ya no tenemos que preocuparnos por escribir código SQL.

.
Espero que a alguien le sea de ayuda!

Usar = > npm i [email protected]^7 --save
Para este error [ExceptionHandler] rxjs_1.lastValueFrom is not a function +1ms TypeError: rxjs_1.lastValueFrom is not a function