What I Learnd/TIL

TIL - supabase 외래키로 연결된 데이터 불러오기

키싸 2023. 8. 25. 22:00

Challenge 데이터에 있는 값들을 불러오되 유저가 신청한 챌린지 데이터만 가져와야한다.

Challenge 데이터 테이블이 있고
users 데이터 테이블이 있다고 하자.

Challenge는 여러사람들이 참여하는 형식으로 한 데이터 당 한 user가 정해진 것이 아니다. 그러므로 새롭게 joinChallenge 테이블을 생성하고 그 테이블을 통해 필요한 데이터를 불러오기로 했다.

joinCallenge 테이블에 user 테이블의 id와 challenge 테이블의 id를 외래키로 연결했다.

  const loadUserChallenges = async () => {
    let { data: challenges } = await supabase.from('joinChallenge').select(`*, mainChallenge (*)`);
  }.eq('user_id', session?.user.id);

위와같이 필요한 데이터를 받아올 수 있었다.

이제 신청한 유저의 수만큼 challenge의 현재신청자 수를 변경해줘봐야겠다.

 

https://supabase.com/docs/guides/api/joins-and-nesting

 

Querying Joins and Nested tables | Supabase Docs

_10 const { data, error } = await supabase.from('countries').select(`

supabase.com