chore(deps): 升级 Drizzle ORM 到 1.0 beta 并迁移至 RQBv2

- drizzle-orm/drizzle-kit 从 0.45.1/0.31.9 升级到 1.0.0-beta.15
- 移除独立的 drizzle-zod 包,改用 drizzle-orm/zod 内置导入
- DB driver 从 bun-sql 切换到 postgres-js
- 新增 defineRelations 入口 (RQBv2)
- 查询语法迁移到 RQBv2 对象风格 orderBy
This commit is contained in:
2026-03-05 10:17:10 +08:00
parent 61e7a1b621
commit 73614204f7
7 changed files with 199 additions and 330 deletions

View File

@@ -35,7 +35,6 @@
"@tanstack/react-router-ssr-query": "catalog:",
"@tanstack/react-start": "catalog:",
"drizzle-orm": "catalog:",
"drizzle-zod": "catalog:",
"postgres": "catalog:",
"react": "catalog:",
"react-dom": "catalog:",

View File

@@ -3,7 +3,7 @@ import {
createInsertSchema,
createSelectSchema,
createUpdateSchema,
} from 'drizzle-zod'
} from 'drizzle-orm/zod'
import { z } from 'zod'
import { todoTable } from '@/server/db/schema'

View File

@@ -6,7 +6,7 @@ import { os } from '../server'
export const list = os.todo.list.use(db).handler(async ({ context }) => {
const todos = await context.db.query.todoTable.findMany({
orderBy: (todos, { desc }) => [desc(todos.createdAt)],
orderBy: { createdAt: 'desc' },
})
return todos
})

View File

@@ -1,14 +1,13 @@
import { drizzle } from 'drizzle-orm/bun-sql'
import { drizzle } from 'drizzle-orm/postgres-js'
import { env } from '@/env'
import { relations } from '@/server/db/relations'
import * as schema from '@/server/db/schema'
export const createDB = () =>
drizzle({
connection: {
url: env.DATABASE_URL,
prepare: true,
},
connection: env.DATABASE_URL,
schema,
relations,
})
export type DB = ReturnType<typeof createDB>

View File

@@ -0,0 +1,4 @@
import { defineRelations } from 'drizzle-orm'
import * as schema from './schema'
export const relations = defineRelations(schema, (_r) => ({}))