Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 셀렉트박스 커스텀
- modal
- egov spring ajax 사용 예시
- 스크롤 이벤트
- 옵저버블
- flex-1
- Ionic modal
- 스크롤 이벤트 감지
- ajax 사용 예시
- prisma
- summary
- Oracle LISTAGG 사용 예시
- angular animation
- angular route
- 아이오닉 스크롤 이벤트
- formgroup
- scroll
- Router
- TAILWIND
- mysql if
- Angular Router
- angular button
- 앵귤러 애니메이션
- angular modal
- ApexChart
- 앵귤러 모달
- 검색
- route
- 호버
- 모달
Archives
- Today
- Total
깜놀하는 해므찌로
@Prisma Client 활용 예시 / type 본문
반응형
SMALL
npm i @prisma/client
1. 설치 CLI
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
enum SocialProvider {
KAKAO
NAVER
APPLE
GOOGLE
}
model OAuthAccount {
id String @id @default(uuid())
provider SocialProvider @default(KAKAO)
createdAt DateTime @default(now())
user User @relation(fields: [userId], references: [id])
userId String
}
2. 기본적인 Prisma client 구성 예시
import { SocialProvider } from "@prisma/client";
export interface IOAuthAccountDTO {
id: string;
provider: SocialProvider;
createdAt: Date;
userId: string;
}
3. 필요한 enum 혹은 model 만 import 하여 사용 가능
import { IOAuthAccountDTO } from '@namdorang/interface';
import { Exclude, Expose } from 'class-transformer';
import { SocialProvider } from "@prisma/client";
@Exclude()
export class OAuthAccountDTO implements IOAuthAccountDTO {
@Expose()
id: string;
@Expose()
provider: SocialProvider;
@Expose()
createdAt: Date;
@Expose()
userId: string;
}
4. 위의 interface 를 DTO 로 구현한 모습 (마찬가지로 필요한 enum만 가져와서 type으로 사용)
반응형
LIST
'IT' 카테고리의 다른 글
Nx nest Angular Guard 활용 예시 JWT Bearer (0) | 2023.08.11 |
---|---|
Angular NX Interceptor 활용 예시 / JWT Bearer (0) | 2023.08.10 |
Nx Angular Lib 생성 및 활용 (0) | 2023.08.09 |
StringMap 활용 간략 예시 (0) | 2023.08.08 |
Github action deploy 깃허브 액션 배포 예시 (0) | 2023.08.07 |