Open2
T3-TruboでNext Postgresに接続する
サンプルでは、Planet Scaleを使用していたが、Next Postgresを使用したかったので接続するまでのメモ
一番詰まったのはここ。turborepoを使用していて、monorepoなので、そのままでは.envファイルを読むことができない。ここで、誰が環境変数を見に行くかというと、
index.ts
import { sql } from "@vercel/postgres";
import { drizzle } from "drizzle-orm/vercel-postgres";
import * as auth from "./schema/auth";
import * as post from "./schema/post";
export const schema = { ...auth, ...post };
export { pgSqlTable as tableCreator } from "./schema/_table";
export * from "drizzle-orm";
export const db = drizzle(sql);
// docs: [storage/packages/postgres at main · vercel/storage](https://github.com/vercel/storage/tree/main/packages/postgres)
migrate.ts
import { sql } from "@vercel/postgres";
import * as dotenv from "dotenv";
import { migrate } from "drizzle-orm/vercel-postgres/migrator";
import { db } from "./index";
dotenv.config({
path: "../../.env",
});
await migrate(db, {
migrationsFolder: "generated",
});
await sql.end();