yeah
This commit is contained in:
32
server/db/index.ts
Normal file
32
server/db/index.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { drizzle } from 'drizzle-orm/libsql'
|
||||
import * as schema from './schema'
|
||||
|
||||
let _db: ReturnType<typeof drizzle> | null = null
|
||||
|
||||
export function useDB() {
|
||||
if (_db) return _db
|
||||
|
||||
const config = useRuntimeConfig()
|
||||
let dbPath = config.pathDb || process.env.PATH_DB
|
||||
|
||||
if (!dbPath) {
|
||||
throw new Error('PATH_DB is not configured')
|
||||
}
|
||||
|
||||
// Convertir le chemin en URL file:// si ce n'est pas déjà une URL
|
||||
if (!dbPath.startsWith('file:') && !dbPath.startsWith('libsql:') && !dbPath.startsWith('http')) {
|
||||
// Si c'est un chemin relatif, le rendre absolu
|
||||
if (!dbPath.startsWith('/')) {
|
||||
dbPath = `file:${process.cwd()}/${dbPath}`
|
||||
} else {
|
||||
dbPath = `file:${dbPath}`
|
||||
}
|
||||
}
|
||||
|
||||
console.log('🗄️ Connexion à la DB:', dbPath)
|
||||
|
||||
_db = drizzle(dbPath, { schema })
|
||||
return _db
|
||||
}
|
||||
|
||||
export { schema }
|
||||
Reference in New Issue
Block a user