Prisma ORM ile NestJS Entegrasyonu Adım Adım
Prisma ORM ile NestJS Entegrasyonu Adım Adım
Giriş: NestJS'te Prisma ORM Kullanımının Önemi
Backend geliştirmede veritabanı işlemlerini kolaylaştıran ve tip güvenliğini artıran Prisma ORM, modern TypeScript tabanlı projelerde sıkça tercih edilmektedir. NestJS ise modüler yapısı ve sağlam mimarisiyle, Node.js uygulama geliştirme süreçlerini ileriye taşıyor. Bu iki güçlü teknolojinin bir araya gelmesiyle, hem hızlı hem de bakım maliyeti düşük, güvenilir projeler geliştirilebilir. "Prisma ORM ile NestJS entegrasyonu" yapmak, geliştiricilere büyük esneklik ve verimlilik sağlar. Bu makalede, adım adım Prisma ORM'i NestJS projenize nasıl entegre edebileceğinizi ele alacağız.
Prisma ORM ile NestJS Entegrasyonu Kurulumu
Gereksinimler ve Kurulum
İlk olarak proje dizininizde NestJS ve Prisma ORM paketlerinin kurulu olduğundan emin olmalısınız. Prisma'yı projenize entegre etmek için aşağıdaki komutları kullanabilirsiniz:
npm install prisma --save-dev
npm install @prisma/client
npx prisma init
Bu işlemlerin ardından, prisma klasörü içinde schema.prisma dosyası oluşacaktır. İçerisinde veritabanınızı ve tablolarınızı tanımlayabilirsiniz.
Prisma ORM ile Model Tanımlama ve Migration
Örnek olarak bir User modeli ekleyelim:
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
createdAt DateTime @default(now())
}
Migration komutu ile veritabanınızı oluşturun:
npx prisma migrate dev --name init
NestJS İçinde Prisma'nın Kullanılması
NestJS'de Prisma client'ı servis katmanında kullanmak için aşağıdaki örnek kodu ekleyebilirsiniz:
import { Injectable, OnModuleInit, OnModuleDestroy } from '@nestjs/common';
import { PrismaClient } from '@prisma/client';
@Injectable()
export class PrismaService extends PrismaClient implements OnModuleInit, OnModuleDestroy {
async onModuleInit() {
await this.$connect();
}
async onModuleDestroy() {
await this.$disconnect();
}
}
Ardından bu servisi AppModule'e sağlayarak projede kullanabilirsiniz:
import { Module } from '@nestjs/common';
import { PrismaService } from './prisma.service';
@Module({
providers: [PrismaService],
exports: [PrismaService],
})
export class PrismaModule {}
Artık PrismaService üzerinden NestJS uygulamanızda tip güvenli veritabanı işlemleri gerçekleştirebilirsiniz.
Sonuç: Sağlam Bir Entegrasyon İle Modern Projeler
Prisma ORM ile NestJS entegrasyonu, modern web uygulamaları geliştirme süreçlerinde büyük avantajlar sunar. Hem Prisma'nın tip güvenliği ve migration yönetimi, hem de NestJS'in modüler yapısı birleştiğinde, geliştirme süreçleri daha hızlı ve sorunsuz ilerler. Bu adımları takip ederek, projelerinizde güçlü bir altyapı oluşturabilir ve ölçeklenebilir uygulamalar geliştirebilirsiniz.

Yorum Gönder