170 похожих чатов

День добрый. Какой инструмент для миграций postgres посоветуете? Использую GORM

33 ответов

31 просмотр

Любой, который поддерживает версии миграции, up + down и произвольные sql-файлы, например https://github.com/rubenv/sql-migrate (но не только он)

https://gorm.io/docs/migration.html не подойдет?

Vladimir Votinov
https://gorm.io/docs/migration.html не подойдет?

Там ведь нет поддержки SQL? все строится либо на методах горма, либо на работе с *sql.DB, верно?

Егор-Друщенко Автор вопроса
Elmanov Anton
Любой, который поддерживает версии миграции, up + ...

https://github.com/golang-migrate/migrate/ а как этот инструмент ? Меня смущает, что тут нет config файла, как в вашем инструменте

Егор-Друщенко Автор вопроса
Vladimir Votinov
https://gorm.io/docs/migration.html не подойдет?

Я бы хотел иметь sql файлы миграций

Егор Друщенко
https://github.com/golang-migrate/migrate/ а как э...

судя по туториалу для postgresql поддерживает все описанные мной выше фичи - https://github.com/golang-migrate/migrate/blob/master/database/postgres/TUTORIAL.md

Егор-Друщенко Автор вопроса
Егор-Друщенко Автор вопроса
Elmanov Anton
да и фиг с ними

А rubenv тоже все нужные фичи поддерживает для postgres?

Егор Друщенко
А rubenv тоже все нужные фичи поддерживает для pos...

rubenv, как и многие другие либы, поддерживает набор SQL файлов с произвольным SQL

В горме вроде есть миграция, но есть один нюанс, горм это надстройка над pgx и в нём тоже есть миграции.

Егор-Друщенко Автор вопроса
🎄 Doe
pgx

не совсем понимаю. Я могу как-то генерировать файлы миграций автоматически с GORMа?)

Егор Друщенко
не совсем понимаю. Я могу как-то генерировать файл...

Не знаю, я категорически не использую орм и фреймворки, посмотрите доку.

🎄 Doe
Не знаю, я категорически не использую орм и фреймв...

Это круто. Но ты либо пишешь что то быстрое. Либо не пишешь реальные проекты)

S V
Это круто. Но ты либо пишешь что то быстрое. Либо ...

Неа, я просто не использую сахар, там где это не нужно.

Егор Друщенко
не совсем понимаю. Я могу как-то генерировать файл...

Я знаю только костыльный метод с запуском его миграции и копированием напечатанных запросов из консоли

🎄 Doe
В горме вроде есть миграция, но есть один нюанс, г...

pgx в горме с 2.0, до этого много лет он требовал *sql.DB c произвольно конфигурируемым драйвером. @ghostfantik у вас legacy код с GORM или новый?

Егор-Друщенко Автор вопроса
Егор Друщенко
Новый. Только начинаем проект

если начинаетe, то рассмотрите это https://github.com/ent/ent вместо GORM

Elmanov Anton
если начинаетe, то рассмотрите это https://github....

ent же вроде как заточен на графоориентированные БД, вроде neo4j или postgis

Егор-Друщенко Автор вопроса
Shchepan Psheshchinschevsky
А bun или go-pg не получше будет

Вот я тоже рассматривал go-pg, но увидел, что его заменяет Bun(написано на гитхабе go-pg)

Павел Середа
ent же вроде как заточен на графоориентированные Б...

так GORM это по сути тоже сущности и связи 1 к 1 , один ко многим, многие ко многим

Elmanov Anton
так GORM это по сути тоже сущности и связи 1 к 1 ,...

GORM для SQL, к GORM вопросов нет, кроме его существенных недоработок

Егор Друщенко
Каких недоработок?

автомиграций например, когда туда копнёшь то поймёшь что там ядро кривое, что влечёт за собой переписывание этой орм чуть более чем полностью

Егор Друщенко
А чем он лучше GORM?

вопрос очень сложный, тк большинство претензий GORM vs ent были к верси горм 1.0, а по второй версии не видел пока "разоблачений" но это 2 основных конкуррента в этой области, так что как минимум рассмотреть стоит.

Егор-Друщенко Автор вопроса
Elmanov Anton
вопрос очень сложный, тк большинство претензий GOR...

А как же Bun? Его пока не стоит брать в продакшн ?

Егор Друщенко
А как же Bun? Его пока не стоит брать в продакшн ?

про него никогда не слышал. Скажу так - лучше попробовать все из возможного на старте, чем потом рефакторить на готовом проекте 🙂

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта