스크린샷 2023-01-07 오전 7.02.42.png

수업 생성시, 수업 자료 묶음에 대해선택할 텐데 NN이 되어있으면 다른 수업에서도 선택할 수가 없을 것 같아 NN을 해제하고 연관관계를 수정해야할듯합니다!

생각해보면 liveclass와 연관관계가 필요하지 않아서 연관관계를 끊어버려도 될 것 같습니다.

정해봐야 할 것

  1. 수업 하나에 묶음 하나를 들고갈 것인가 (그럼 사용자가 선택한 오브젝트 ID만 저장) ✅
  2. 수업 하나에 여러개의 묶음을 들고갈 것인가 (사용자가 선택한 오브젝트 ID를 ARRY 타입으로 저장)

1:N 관계형 테이블에 대한 고민

6 Rules of Thumb for MongoDB Schema Design | MongoDB Blog

장단점을 생각해보자

  1. 일대소 모델링
> db.classMaterials.findOne()
{
  title: 'Kat와 함께하는 수학 수업',
  ssn: '123-456-7890',
   puzzle : [
     { title: '123 Sesame St', Image: 'Anytown', Rows: 'USA' },
     { street: '123 Avenue Q', city: 'New York', cc: 'USA' }
  ],
  Image : [
     { street: '123 Sesame St', city: 'Anytown', cc: 'USA' },
     { street: '123 Avenue Q', city: 'New York', cc: 'USA' }
  ],
  객관식 : [
     { street: '123 Sesame St', city: 'Anytown', cc: 'USA' },
     { street: '123 Avenue Q', city: 'New York', cc: 'USA' }
  ]
}