본문 바로가기

supabase

2024.3.19 기록 ( supabase의 데이터 구조 )

어제부터 진행했던 supabase의 데이터 테이블에 있어서 몇가지 문제가 존재했다.

 

 

1. 데이터와 데이터가 서로 연관이 있다면, 어떤 방식으로 연결해야하는지

[
  {
    "challengesId" : "1",
    "active" : true, 
    "status" : 
    [
      {
        "date" : 03-19,
        "isDone" : true
      },
      {
        "date" : 03-20,
        "isDone" : true
      }
    ],      
  },
  {
    "challengesId" : "2", 
    "active" : true,
    "status" : 
    [
      {
        "date" : 03-19,
        "isDone" : true
      },
      {
        "date" : 03-20,
        "isDone" : true
      }
    ],      
  }
]

 

현재 이런방식을 통해, 활성화된 데이터와, 해당 데이터의 값들을 기록하고있다.

일정에 맞춰 challengesId 의 값의 status에 하나씩 추가해주게 된다.

 

 

 

2. 데이터를 불러오고, 추가하는 기능

 

값을 불러올 때는 참조 테이블을 통해 불러오고 isDone값을 불러오고

기록 할 경우 현재의 date와 isDone를 한 번에 기록하게 된다.

 

각각의 기능은 다음과 같다.

 

1. 데이터를 불러옴

  const { data: user, error: userError } = await supabase
    .from("user")
    .select("challengeList");

 

 

 

그런데 이렇게 전개를 하니 문제가 생겼다.

 {
    challengeList: '[\r\n' +
      '  {\r\n' +
      '    "challengesId" : "1",\r\n' +
      '    "active" : true, \r\n' +
      '    "status" : \r\n' +
      '    [\r\n' +
      '      {\r\n' +
      '        "date" : "03-19",\r\n' +
      '        "isDone" : true\r\n' +
      '      },\r\n' +
      '      {\r\n' +
      '        "date" : "03-20",\r\n' +
      '        "isDone" : true\r\n' +
      '      }\r\n' +
      '    ]\r\n' +
      '  },\r\n' +
      '  {\r\n' +
      '    "challengesId" : "2", \r\n' +
      '    "active" : true,\r\n' +
      '    "status" : \r\n' +
      '    [\r\n' +
      '      {\r\n' +
      '        "date" : "03-19",\r\n' +
      '        "isDone" : true\r\n' +
      '      },\r\n' +
      '      {\r\n' +
      '        "date" : "03-20",\r\n' +
      '        "isDone" : true\r\n' +
      '      }\r\n' +
      '    ]\r\n' +
      '  }\r\n' +
      ']'
  }

 

이런 방식으로 출력이 되는 문제가 발생했다..

 

 

아니 도대체 추가는 언제해보지.

'supabase' 카테고리의 다른 글