Ошибка обработки массива в GORM: failed to parse field: Reviews, error: unsupported data type: &[]

У меня есть структура:

type Item struct {
*gorm.Model
Image       string         `json:"image"`
Name        string         `json:"name"`
Description string         `json:"description"`
Price       float32        `json:"price"`
Score       float32        `json:"score"`
Reviews     []string `json:"reviews" gorm:"type:text[]"`
Category    string         `json:"category"`
Trademark   string         `json:"trademark"`
Colour      string         `json:"color"`
Country     string         `json:"country"`
Material    string         `json:"material"`
}

Как только не пробовала изменять значения. Сначала добавила новую структуру type MultiString []string -> Reviews MultiString json:"reviews" gorm:"type:text[]" - но после изменений выходит ошибка

sql: Scan error on column index 8, name "reviews": unsupported Scan, storing driver.Value type string into type *items.MultiString; sql: Scan error on column index 8, name "reviews": unsupported Scan, storing driver.Value type string into type *items.MultiString; sql: Scan error on column index 8, name "reviews": unsupported Scan, storing driver.Value type string into type *items.MultiString


Ответы (1 шт):

Автор решения: Maggot

Что мне помогло:

  1. Скачиваем драйвер postgres - go get github.com/lib/pq.
  2. Внутри пакета есть переменная StringArray. Используем её в структуре Reviews pq.StringArray json:"reviews"

P.s. Если ошибка сохранилась, то попробуйте использовать функцию .Scan() в своем репозитории

→ Ссылка