D
drizzle
Przewodnik schematów Drizzle ORM – definiuj tabele, migracje i modele baz danych
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill asystenta do pracy ze schematami Drizzle ORM. Aktywuje się przy definiowaniu tabel, tworzeniu migracji lub pytaniach o użycie ORM. Zawiera konwencje nazewnictwa (snake_case dla tabel i kolumn), funkcje pomocnicze do znaczników czasu, wzorce kluczy obcych i pierwotnych, oraz wnioskowanie typów TypeScript. Obsługuje PostgreSQL ze ścisłą walidacją.
Jak używać
- Zainstaluj skill w swoim projekcie lobehub, wskazując ścieżkę do repozytorium drizzle z gałęzi main.
- Umieść konfigurację Drizzle w pliku drizzle.config.ts na poziomie głównym projektu.
- Organizuj schematy w katalogu src/database/schemas/, korzystając z funkcji pomocniczych z pliku _helpers.ts do znaczników czasu (createdAt, updatedAt, accessedAt).
- Definiuj tabele w PostgreSQL, stosując konwencje: nazwy tabel w liczbie mnogiej i snake_case (np. users, session_groups), kolumny w snake_case (user_id, created_at). Dla kluczy głównych użyj text z prefixem (np. idGenerator('agents')), dla kluczy obcych dodaj references() z akcją onDelete.
- Tworząc indeksy, zwracaj tablicę zamiast obiektu, np. (t) => [uniqueIndex('client_id_user_id_unique').on(t.clientId, t.userId)].
- Wnioskuj typy TypeScript z tabel za pomocą createInsertSchema oraz typeof agents.$inferInsert i typeof agents.$inferSelect, aby uzyskać typy NewAgent i AgentItem.