Nova@1.0 - Despliegue de Backend II


Una vez implementado PrismaORM a nivel de base de datos, el siguiente paso es inyectar Prisma en la app de Nestjs
Para eso basta con crear un servicio
// src/prisma.service.ts
import { PrismaClient } from '@prisma/client';
import { Injectable, OnModuleInit, OnModuleDestroy } from '@nestjs/common';
@Injectable()
export class PrismaService
extends PrismaClient
implements OnModuleInit, OnModuleDestroy
{
async onModuleInit() {
await this.$connect();
}
async onModuleDestroy() {
await this.$disconnect();
}
}
Y agregarlo a la aplicación principal:
// src/app.module.ts
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { PrismaService } from './prisma.service';
@Module({
imports: [],
controllers: [AppController],
providers: [AppService, PrismaService],
})
export class AppModule {}
Con esto ya tendríamos implementado PrismaORM a nivel general en Nestjs, a falta de realizar las implementaciones en cada una de las entidades
Creando entidades
El siguiente paso es el de crear las entidades que, en líneas generales, van a ser los endpoints de la API que va a servir de nexo entre el backend y el frontend.
Las entidades que voy a crear son:
clients
employees
products
services
transactions
users
Las últimas versiones de Nestjs incluyen un script que genera los recursos (entidades en este caso) de forma automática.
nest g resource <resource_name>
Con esto tengo ya listos todos los endpoints de la API, a nivel de estructura y ya puedo ponerme con la configuración de cada uno de ellos
Subscribe to my newsletter
Read articles from MDG developer directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
