Open sanghunjo921 opened 1 year ago
일단 열려있는 TC 관련 PR 적당히 머지하고, 이 부분 작업하신 것도 PR로 올려주세욥
그동안 Property 모델에서 City (서울, 부산 등 유저가 선택) field의 값을 베이스로 District 필드의 선택 가능한 값이 변하게 (서울 선택시 중구, 강남구 / 부산 선택시 해운대 서구 등) 구현하려고 했는데 여러 글들을 읽고 검색도 했는데 마땅한 방법이 생각나지 않네요.
1 : 일단 cityType을 enum 형식으로 만들고 district 타입의 경우 도시별로 enum 타입을 만들어서 district model을 별도로 만들어서 모든 도시별로 district 타입을 넣은 다음에 serializer에서 city에 따라 다른 district type을 call -> 불필요하게 district model에 들어가는 값만 증가할꺼 같아서 보류
2 : city district 모델을 각각 만들고 city 모델은 enum 형식의 cityType을 가져옴. district model의 경우 city의 pk를 가지고 있으며 이를 통해 가져오는 district type이 달라지는 방식 -> 모델에서 validation이 이루어지는게 이상한거 같아서 보류
3 : city district 모델을 각각 만들고 city 모델은 enum 형식의 cityType을 가져옴. district model의 경우 city의 pk를 가짐. serializer에서 city pk 기준으로 validation 진행 -> serializer는 모델 데이터를 직렬화 시키는 역할이기에 validation을 넣어서 직렬화 시키는건 결국 모델에 모든 district 값이 들어가기게 위에랑 같은 문제?
여러가지로 검색하고 해보려고 하는데 하다가 이상해서 다 롤백 시키고 난리났네요..... 혹시 관련된 링크나 검색할 키워드 아시나요? post 리퀘스트 시에 대한 validation은 자료가 많은데 모델의 필드가 다른 필드 기준으로 변동하는 부분은 찾기가 힘드네요
회사에서 판매된 상품관리까지 들어가서 약간 바빠서 진행이 느려졌네요. 이번주 공부해야할 내용부터 정리 끝내고 이제 프로젝트 진행하고 있는데 모델부분에서 막히네요.
property와 city 그리고 property와 district는 각각 N:1 관계인거 같은데 (city는 여러개의 매물에 속할 수 있지만 매물은 여러개의 city를 가질 수 없으므로) 그럼 모델을 정의할때 city와 distirct에 property = models.ForeignKey(Property, on_delete=models.CASCADE) 처리를 해야하는것 같습니다.
저번에 멘토링때 property도 city와 district fk를 가지고 있어야 한다고 했었는데 이 경우 어떤식으로 fk를 넣어줘야 할까요?
@sanghunjo921
property
필드를 정의하면 말씀하신 것과 반대 방향이네요. Property 안에 city
와 district
필드가 있는 게 맞겠습니다.
현재상황
목표
post를 통해 property를 만들 때 property를 등록하는 user의 정보에 따라 user field값 설정
post/patch/put request 시 중요 필드의 validation 필요.
AC