Product_schema.prisma

김종민·2022년 8월 5일
0

apple-market

목록 보기
17/37

**
들어가기
Product
1. schema.prisma model

**

1. schema.prisma

generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["referentialIntegrity"]
}

datasource db {
  provider             = "mysql"
  url                  = env("DATABASE_URL")
  referentialIntegrity = "prisma"
}

model User {
  id        Int       @id @default(autoincrement())
  createdAt DateTime  @default(now())
  updatedAt DateTime  @updatedAt
  phone     String?   @unique
  email     String?   @unique
  name      String
  avatar    String?
  tokens    Token[]
  products  Product[]
  fav       Fav[]
}

model Token {
  id        Int      @id @default(autoincrement())
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
  payload   String   @unique
  user      User     @relation(fields: [userId], references: [id], onDelete: Cascade)
  userId    Int
}

model Product {
  id          Int      @id @default(autoincrement())
  createdAt   DateTime @default(now())
  updatedAt   DateTime @updatedAt
  user        User     @relation(fields: [userId], references: [id], onDelete: Cascade)
  userId      Int
  image       String
  name        String
  price       Int
  description String   @db.MediumText  ///String하면, 글자수가 191인가 그런데.
                                       ///db.MediumText.하면 더 많은 글자를 입력가능
  favs        Fav[] ///관심목록 등록되는 product
}

model Fav {  ///관심상품관련 model. product의 하트를 클릭하면, 관심상품으로 등록됨
              ///my profile에서 관심상품을 클릭하면 보여지는 product들
              ///user와 product 가 relation된 것을 중점적으로 본다.

  id        Int      @id @default(autoincrement())
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
  user      User     @relation(fields: [userId], references: [id], onDelete: Cascade)
  product   Product  @relation(fields: [productId], references: [id], onDelete: Cascade)
   ///onDelete:Cascade는 User를 delete하면, 연결된 상품 및 관심상품도 지워짐.
  userId    Int
  productId Int
}

항상 schema.prisma를 수정하면, pscale connect apple-market, npx prisma db push

profile
코딩하는초딩쌤

0개의 댓글