241024 팀 프로젝트 집밥도감 04 - 트러블 슈팅

신한별·2024년 10월 24일

💪 매일 기록

목록 보기
84/97

Supabase INSERT 에러 (1)

문제 발생


invalid input syntax for type uuid: "28" 그게뭔데


post_id의 타입을 uuid->bigint로 바꿔주려고 하니까 또 오류남

원인 추론

supabase에서 외래키로 다 엮어놔서 그런가 싶어서 일단 외래키 설정한거 다 풀어줌

해결 방안

여전히 같은 오류 나서 text로 바꿔줬더니 잘 됨(뭔차이지?)


Supabase INSERT 에러 (2)

문제 발생

테스트하는거라 일단 null값만 넣어볼랬는데 이런 오류가 뜬다.

해결 방안 (1)

수파베이스에서 null 허용하고 다시 시도 => 해결


API 데이터 관련 에러

문제 발생


배열이 빈 값으로 업로드 됨

원인 추론

recipe_manual: Array.from({ length: 20 }, (_, index) => recipeData[`MANUAL${index + 1}`]).filter(Boolean),


당연함, API 데이터에서는 MANUAL1, MANUAL2 이런식이 아니라 MANUAL01, MANUAL02 이런식으로 증가함.
한 자리 숫자인 경우에는 숫자 앞에 0을 붙여줘야 했음.
찾아보니 숫자 앞에 0 붙여주는 padStart(자리수, 채울 문자) 함수가 존재함. 😅

해결 방안

1차 수정

recipe_manual: Array.from({ length: 20 }, (_, index) => recipeData[MANUAL${index + 1}.padStart(2, "0")]).filter(Boolean)

하지만 또 문제발생

2차 수정

recipemanual: Array.from(
{ length: 20 },
(
, index) => recipeData[MANUAL${String(index + 1)}.padStart(2, "0")]
).filter(Boolean),
문자+숫자라 그런가 싶어서 index+1을 문자열로 바꿔줌

3차 수정

padStart 위치 이상한거 발견하고 수정해줌
recipemanual: Array.from(
{ length: 20 },
(
, index) => recipeData[MANUAL${String(index + 1).padStart(2, "0")}]
).filter(Boolean),

완성

근데 저기 .a는 뭐지했는데 걍 API에서 저렇게 줬음...
저것도 수정해주는 코드를 짤까 하다가, 매뉴얼 형식이 정해져있는게 아니고 전부 다 달라서 혹시 몰라서 일단 냅둠.

기타


이미지도 똑같은 방식으로 넣어줬는데 따옴표 맘에 안듦
지워주고싶어서 구글링해서 한 6가지 방법으로 시도해봤는데 다 안됨

원인


당연한 jsonb 타입이었음 저게 정상임


uuidv4() 오류

문제 발생 (모듈 'uuid'에 대한 선언 파일을 찾을 수 없습니다.)

uuidv4 대신 uuid_v4 쓰면 된다길래 고쳐 봤는데 나는 안됨 -> 더 찾아보니까 타입스크립트문제^^

해결 방안

  1. 냅다 설치
    yarn add --dev @types/uuid

  2. 냅다 추가
    tsconfig.json 파일에 설정 추가

"compilerOptions": {
    "typeRoots": ["./@types", "node_modules/@types"],


해결완😏 고마워요 고마워요 선배림들~!

0개의 댓글