У меня есть модель, в которой есть значения в виде енама (0/1/2/3/etc) Я пытаюсь реализовать Scan/Value функции, застрял на том, как получить исходное значение в бд?
Т.е, условно
type Model struct { MyEnum MyEnum `gorm:"column:status"` }
Вообще это не очень хорошая практика. Скажем так, она допустима, но в перспективе может принести много проблем.
Если требуются какие-то "перечисления", то проще организовать справочник на стороне БД с кодами, и такой же справочник с константами завести в программе.
В итоге работа должна вестись через символьные коды, а не через числа.
И так же есть доступный список статусов (обычный HashMap<String, Status>) Проблема в том, что select я "починил", теперь борюсь с сохранением. Не могу никак понять как горну сказать как именно переобразовывать структуру в int тип(в моем случае)
И так же есть доступный список статусов (обычный HashMap<String, Status>) Проблема в том, что select я "починил", теперь борюсь с сохранением. Не могу никак понять как горну сказать как именно переобразовывать структуру в int тип(в моем случае)
Не уверен, что есть такая возможность вообще. Обычно это решается на уровне базы, то есть вы вставляете в качестве значения результат подзапроса с кодом — и всё.