본문 바로가기

반응형

Front-End

(32)
An operation failed because it depends on one or more records that were required but not found. Record to delete does not exist.
Prisma Update 함수정리 await prisma.modelName.update({ where: { id: 1 }, data: { ... }}) await prisma.modelName.updateMany({ where: { 조건 }, data: { ... }}) await prisma.modelName.upsert({ where: { id: 123 }, update: { ... }, create: { ... }}) data: { views: { increment: 1 // ➕ views = views + 1 }}
Prisma CRUD 함수 정리 await prisma.modelName.create({ data: { ... }}) await prisma.modelName.createMany({ data: [ {...}, {...}, ... ], skipDuplicates: true // (옵션)}) await prisma.modelName.delete({ where: { id: 값 }}) await prisma.modelName.deleteMany({ where: { 조건 }}) await prisma.modelName.upsert({ where: { id: 값 }, update: { ... }, create: { ... }}) await prisma.cms_board_data.count({ where: { board_key: '..
prisma-format (자동 camelCase 변환 CLI 도구) npx prisma-format --map-fieldsmodel cms_board_data { createDate DateTime @map("create_date") // ✅ 자동으로 바뀜!} // snake_case → camelCase 변환기 예시function toCamel(str: string) { return str.replace(/_([a-z])/g, (_, g) => g.toUpperCase())} const prisma = new PrismaClient().$extends({ result: { $allModels: { $allFields: { compute(value, fieldName) { const camelField = toCamel(..
Prisma camelCase Case 사용 model cms_board_data { idx Int @id @default(autoincrement()) title String content String createDate DateTime @map("create_date") // ← DB는 create_date지만, 코드에서는 createDate updateDate DateTime @map("update_date")}const boardList = await prisma.cms_board_data.findMany({ orderBy: { createDate: 'desc' // ← 카멜표기법 그대로 사용 가능 }})
Node.js 주요 라이브러리 비교 일단 Prisma로 진행할 예정.
Vue 3 주요 Hook 정리표 (Composition API 기준)
React 주요 Hook 정리표

반응형