의외로 foreign key가 이론적으로는 쉽지만 실질적으로 활요용하고자 할 때,
복잡한 개념이란 사실을 깨닫게 되었다.
foreign key를 데이터에 설정하는 법에 대해서는 이미 정리했고,
이번에는 실제로 서버에서 물러올 때 어떻게 코드를 작성하면 좋을 지 정리해보고자 한다.
특히나, 이번에 내가 진행하는 프로젝트에서 구현하려는 기능 중 하나가,
foreign key를 2개나 지닌 데이터에서 한꺼번에 데이터를 불러오는 것이기 때분에 더 정리해보고자 한다.
위의 공식문서를 차근차근 따라가며 테스트 해보았다.
reviews
.findAll({
where: {
active: true,
},
include: {
model: users,
as: 'useremail',
where: {
active: true,
},
attributes: ['email'],
},
내가 구현하고자 하는 데이터는 최종적으로는 두개의 테이블과 외래키로 연결되어 있다.
위의 코드를 활용하여, include 조건을 추가했지만, 2개의 연결된 데이터가 다 받아와지지 않고, 하나만 받아와졌다.
=> 해결책은 간단했다.
include: [
{
model: users,
as: 'useremail',
where: {
active: true,
},
attributes: ['email'],
},
{
model: bootcamp_list,
as: 'bootcampname',
attributes: ['name'],
},
],