내 앱에서는 objection.js를 사용합니다.
PostgreSQL 데이터베이스 열에 문자열 배열을 삽입하는 동안 문제가 발생했습니다. 열은 다음과 같이 정의됩니다.
path TEXT[] NOT NULL
스키마는 다음과 같습니다.
path: { type: 'array', items: { type: 'string' }, notNull: true }
upsertGraphAndFetch
(objection.js)를 사용하여 테이블 열을 업데이트하고 싶지만 업데이트하고 삽입하는 동안 오류가 발생합니다. 열 경로를 삽입하는 동안 upsertGraphAndFetch
(objection.js)更新表列,但在更新和插入时,插入列path时出现错误
return NotificationUserOption.query().upsertGraphAndFetch( { userId: ctx. user, path, groupId, option }, { insertMissing: true },
当我传递类似于['chat']
await updateGlobalChatNotificationOptIn({ variables: { path: ['chat'], option: updatedGlobalChatNotificationOptIn ? '30MinSummary' : 'off', }, }) }
['chat']
rrreee
와 유사한 경로를 전달하면 이 코드를 사용하여 배열을 삽입하려고 하면 다음 오류가 발생합니다.배열 리터럴 형식이 잘못됨: "["chat"]" "["는 배열 차원을 명시적으로 지정해야 합니다.
'{chat}'
)和双括号([['chat']]
단일 괄호(
PostgreSQL 유형
TEXT[]
열에 문자열 배열을 삽입하려면 JavaScript 배열을 문자열 표현으로 변환하고 각 요소를 중괄호와 큰따옴표로 묶어야 합니다.Objection.js에서 다음을 수행하세요.
으아아아이제
TEXT[]
"잘못된 배열 리터럴" 오류가 발생하지 않습니다. 데이터베이스에서 데이터를 쿼리할 때 Objection.js는 이를 JavaScript 배열로 다시 변환하는 작업을 처리합니다.#Apache-Age #posgresql #graphql #objection.js