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

Привет Подскажите как лучше поступить вот у меня есть структура type

LeaseTerms string
const (
ShortLease LeaseTerms = "SHORT_TERM"
LongLease LeaseTerms = "LONG_TERM"
)

type Offer struct {
...
LeaseTerms LeaseTerms
...
}

база pg
подумал это то самое время что бы поле тоже сделать enum
CREATE TYPE LEASE_TERMS AS ENUM (
'SHORT_TERM', 'LONG_TERM'
);

Поле LeaseTerms в структуре может быть опциональным
т.е. если поле не заполнено то в базу летит пустая строка, а такого значения enum в базе нет

Как варианты
1)перед сохранением в бд, если пустая строка то в базу NULL
2) добавить в go enum что то типа NoSet LeaseTerms = "NO_SET" и заполнять его этим значением
3) если в структуре это поле сделать ссылкой то установка значения выглядит как то не очень newOffer.LeaseTerms = (*domain.LeaseTerms)(&update.Unique). (или можно сделать сеттеры для этой структуры и все спрятать?)

3 ответов

4 просмотра

имхо, в структуре тип указатель и в бд null ну либо не создавать энам и писать путую строку

не нужно пытаться натянуть СУБД на Golang с NO_SET.

Я за добавление в enum дефолтного значения для null. Сильно упростит вам жизнь

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

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

коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
А что ты вообще делаешь ?
Yesgoter
13
средствами IBX как-то можно выполнить запрос insert ... returning?
Igor
31
На работе пишем распределенное приложение, у которого сотни, если не тысячи настроек. Конфиги написаны на xml, расположены на разных хостах и должны быть согласованы друг с др...
Aleksandr Druzhinin
5
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
18
Всем привет 🙂 Какая-то непонятная проблема у меня с видео, раньше такого не было. Загружаю видео с гугл диска именно в видео mp4 и меняю ссылку как положено вот она: https://d...
Ксюша|Верстка на Тильде|Дизайн 🦥
6
Hi there everyone Is there anyone who have not started hamster bot yet? I need only one, I'll be glad if you do this for me DM if you haven't yet
Mehrshad
53
А какие у этого try практические плюсы перед eval?
Oleg Volkov
41
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Карта сайта