auth
This commit is contained in:
1
src/server/db/query.ts
Normal file
1
src/server/db/query.ts
Normal file
@@ -0,0 +1 @@
|
||||
import "server-only"
|
||||
@@ -1,7 +1,7 @@
|
||||
// Example model schema from the Drizzle docs
|
||||
// https://orm.drizzle.team/docs/sql-schema-declaration
|
||||
|
||||
import { sql } from "drizzle-orm";
|
||||
import { relations, sql } from "drizzle-orm";
|
||||
import { index, pgTableCreator } from "drizzle-orm/pg-core";
|
||||
|
||||
/**
|
||||
@@ -12,16 +12,37 @@ import { index, pgTableCreator } from "drizzle-orm/pg-core";
|
||||
*/
|
||||
export const createTable = pgTableCreator((name) => `gregorlohaus.com_${name}`);
|
||||
|
||||
export const posts = createTable(
|
||||
"post",
|
||||
export const cvCategory = createTable(
|
||||
"cv_category",
|
||||
(d) => ({
|
||||
id: d.integer().primaryKey().generatedByDefaultAsIdentity(),
|
||||
name: d.varchar({ length: 256 }),
|
||||
id: d.uuid().primaryKey(),
|
||||
name: d.varchar({length: 50})
|
||||
}),
|
||||
(t) => [index("name_idx").on(t.name)],
|
||||
)
|
||||
|
||||
export const cvCategoryRelations = relations(cvCategory,({many}) => ({
|
||||
cvEntry: many(cvEntry)
|
||||
}))
|
||||
|
||||
export const cvEntry = createTable(
|
||||
"cv_entry",
|
||||
(d) => ({
|
||||
id: d.uuid().primaryKey().notNull(),
|
||||
categoryId: d.uuid('category_id'),
|
||||
fromTime: d.date().notNull(),
|
||||
toTime: d.date().notNull(),
|
||||
createdAt: d
|
||||
.timestamp({ withTimezone: true })
|
||||
.default(sql`CURRENT_TIMESTAMP`)
|
||||
.notNull(),
|
||||
updatedAt: d.timestamp({ withTimezone: true }).$onUpdate(() => new Date()),
|
||||
})
|
||||
)
|
||||
|
||||
export const cvEntryRelations = relations(cvEntry, ({one}) => ({
|
||||
category: one(cvCategory, {
|
||||
fields: [cvEntry.categoryId],
|
||||
references: [cvCategory.id]
|
||||
}),
|
||||
(t) => [index("name_idx").on(t.name)],
|
||||
);
|
||||
}));
|
||||
|
||||
Reference in New Issue
Block a user