trazzle / trazzle-server

trazzle service REST APIs
https://trazzle.p-e.kr/api-docs#/
1 stars 0 forks source link

[은강] 마그넷 국가 이미지 S3 에 저장 #6

Open EunKangChoi-Dyphi opened 7 months ago

EunKangChoi-Dyphi commented 7 months ago

국기 마그넷

s3에 업로드

마그넷 데이터베이스에 로우 추가

(이건 동성님이랑 얘기해볼필요있음) 마그넷과 국가 간의 관계가 없음. 현재 마그넷은 도시와 연결되어있음.

// prisma.schema

model Country {
  id        Int      @id @default(autoincrement())
  code      String   @unique
  name      String   @unique
  continent String? // 대륙
  createdAt DateTime @default(now()) // 생성일
  updatedAt DateTime @updatedAt // 수정일
  City      City[]
}

model City {
  id          Int          @id @default(autoincrement()) // PK
  name        String
  country     Country      @relation(fields: [countryCode], references: [code])
  countryCode String // 참조키
  latitude    String?
  longitude   String?
  createdAt   DateTime     @default(now()) // 생성일
  updatedAt   DateTime     @updatedAt // 수정일
  TravelNote  TravelNote[]
  Magnet      Magnet[]
}

model Magnet {
  id        Int      @id @default(autoincrement()) // PK
  url       String   @unique
  city      City     @relation(fields: [cityId], references: [id], onDelete: Cascade)
  cityId    Int
  createdAt DateTime @default(now()) // 생성일
  updatedAt DateTime @updatedAt // 수정일
}

prisma.schema 마그넷모델 과 국가모델 간의 관계가 필요. 국가:마그넷 = 1:(0...1) 로할지 아니면, 국가:마그넷 = 1:(0...N) 으로할지 설계 확인필요.

Trazzle 로고 마그넷

도시 마그넷

EunKangChoi-Dyphi commented 7 months ago

이슈브랜치 issues/traz-6 생성완료했습니다!

lullaaaby13 commented 7 months ago

일단 제가 이해하기로는 - 도시의 마그넷이 없을 시 국가 마그넷 - 국가 마그넷도 없을 시 기본 마그넷 으로 이해를 했고 이해한 내용으로 테이블 구조를 생각했을 때 아래와 같이 정리해봤어용 구현 방법이야 여러 가지가 있겠지만 저는 국가 마그넷 / 도시 마그넷 테이블을 분리해서 가져가는게 좋을 것 같아요 도시 마그넷은 무료/유료가 나뉘고 가격까지 책정이 되기때문에 그 용도가 국가 마그넷과는 좀 구별되어야 될 것 같기 때문인데요 근데 쓰다보니 국가 마그넷은 테이블을 생성하지 않고 Country 테이블에 컬럼 하나만 추가하는 방법도 괜찮을 것 같네용 좀 말이 긴데 제가 말씀드린 것 중에 이해안가는 부분있으면 코멘트나 카톡 남겨주세용! 😄

제가 놓친 부분이 있어서 다시 고민좀해볼게요!ㅎㅎ

image