Integrarea Prisma ORM (PrismaService) în NestJS în NestJS

database Prisma 5.x / NestJS 10.x Q&A / Distribuie cod

Utilizarea modernă a clientului type-safe Prisma ORM în NestJS: generarea schemelor, injectarea PrismaService și tranzacții automate.

Sintaxă
class PrismaService extends PrismaClient implements OnModuleInit

Prisma este alternativa modernă la TypeORM, oferind generare automată de tipuri TypeScript din fișierul schema.prisma și interogări 100% type-safe.

Integrarea recomandată în NestJS presupune crearea unui PrismaService ce extinde PrismaClient și implementează OnModuleInit pentru deschiderea conexiunii la pornirea modulului.

Exemplu: Definirea serviciului PrismaService și utilizare în controller
import { Injectable, OnModuleInit } from '@nestjs/common';
import { PrismaClient } from '@prisma/client';

@Injectable()
export class PrismaService extends PrismaClient implements OnModuleInit {
  async onModuleInit() {
    await this.$connect();
  }
}

@Injectable()
export class PostsService {
  constructor(private prisma: PrismaService) {}

  async getPublishedPosts() {
    return this.prisma.post.findMany({
      where: { published: true },
      include: { author: true },
    });
  }
}

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Integrarea Prisma ORM (PrismaService) în NestJS

Ai o nelămurire despre utilizarea comenzii Integrarea Prisma ORM (PrismaService) în NestJS sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.