강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

dsfsdf님의 프로필 이미지
dsfsdf

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

게시글 불러오기

include 질문이요

작성

·

196

0

      const fullUserWithoutPassword = await User.findOne({
        where: { id: user.id },
        attributes: {
          // attribute: ['id','nickname','email'] => id,nickname,email만 쓰겠다.
          exclude: ["password"],
        },
        include: [
          {
            model: Post,
            attributes: ["id"],
          },
          {
            model: User,
            as: "Followings",
            attributes: ["id"],
          },
          {
            model: User,
            as: "Followers",
            attributes: ["id"],
          },
        ],
    });
include의 모델 User는 아래와 같이 user와user의 관계에
의해 mysql에 테이블 follow가 만들어 지는데요.
   db.User.belongsToMany(db.User, {
      through: "Follow",
      as: "Followers",
      foreignKey: "FollowingId",
    });
    db.User.belongsToMany(db.User, {
      through: "Follow",
      as: "Followings",
      foreignKey: "FollowerId",
  });
이때
          {
            model: User,
            as: "Followings",
            attributes: ["id"],
          },
          {
            model: User,
            as: "Followers",
            attributes: ["id"],
        },
1번째 include 모델 User는 테이블follow의 FollowerId
값으로 해당 user를 찾고
2번째는 FollowingId로 user를 찾아서 객체로 반환 해
주는 건가요? 이쪽부분이 잘 이해가 안되네요..

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

네 맞습니다. 어떤 부분이 헷갈리시나요?

dsfsdf님의 프로필 이미지
dsfsdf
질문자

아 맞는거였군요. 확신없이 적었는데 감사합니다

dsfsdf님의 프로필 이미지
dsfsdf

작성한 질문수

질문하기