개인 프로젝트/블로그

게시글 category 적용 고민

공주맛밤 2022. 7. 8. 21:10

게시글 작성시에 select로 largecategory를 선택하고 선택한 largecategory에 의해 subcategory목록이 나타나게 하고 싶다.

그래서 largecategory목록을 api를 통해 불러왔으나 연관관계 설정으로 인해 largecategory->subcategories->boards->(replys)까지 들고 오게 되었고 고작 화면에 카테고리 설정을 하기 위해서 이 모든 데이터를 들고 오게 할 순 없다.

그래서 save로직에서 중간에 카테고리 이름들만 따로 저장하는 테이블을 만들어서 불러와 적용하는 것이 현재로선 모든 게시글까지 들고오게 하는 방법보다 나아 보인다.

물론 fetch에게 filter를 적용하는 방법이나, 다른 효율적인 방법들이 많겠지만 현재로선 아직 모르는 방법들이고 추후에 알게된다면 적용해 볼 예정이다.

방법은 다음과 같다.

id largecategory_id categoryname group
1 1 공부 large
2 2 취미 large
3 1 react small
4 1 spring small
5 2 운동 small
6 2 요리 small

과 같은 테이블이 설정되었다고 생각해 보자.

 

과 같이 largecategory, subcategory테이블은 동시에 largeCategory_id를 갖고 있으므로 largeCategory_id와 group으로 묶어서 생각할 수 있다. 예를 들어, 앞선 select가 group이 'large'인 애들로 구성되어 있다면 다음과 같고

공부를 선택하면 largecategory-id가 '1'이고 group이 'small'인 애들로 구성된 select가 다음과 같이 구성되는 것이다.

728x90
반응형