Как сохранить массив float32 для удвоения точности из gorm - PullRequest
0 голосов
/ 06 июня 2018

Я пытаюсь сохранить float32 в golang в db (postgresql).Я использую Горм.Мое поле в структуре:

    Cluster [512]float32 `gorm:"column:cluster;type:float[]"`

Когда я сохраняю в дб, в режиме журнала отображается правильный sql, но ошибка записи:

преобразование аргумента $ 3 тип: неподдерживаемый тип [512]float32, массив

У кого-нибудь есть идеи, как подсказать postgres, что делать?Спасибо!

1 Ответ

0 голосов
/ 06 июня 2018

Я столкнулся с такой проблемой.Я предлагаю вам сделать свой собственный тип для вашего массива, который реализует интерфейс оценщика типа

и

интерфейс сканера типа

из пакета database/sql.

Также вы можете попробовать тип pq.Float64Array вместо фрагмента с плавающей запятой (я знаю, что это float64, но это единственный тип, который у них есть) из github.com/lib/pq.

...