Как создать слайс из структуры, чтобы в него можно было считать с помощью slqx Select?
Есть вот такой код. Мне нужно каким-то образом, создать слайс из этой структуры, чтобы можно было сделать примерно так sm.Select(MakeSlice(base)). Попробовал вот так - не сработало
Не понимаю, зачем усложнять с созданием переменной интерфейса, а потом в неё записывать нормальную структуру?
Если нужно, чтоб структура реализовывала интерфейс, то нужно у структуры просто реализовать методы.
type MyInterface interface{
MyMethod()
}
type Personals []Personal
func (p Personals) MyMethod() {}
func get() MyInterface {
var v Personals // equal []Personal
db.Select(&v,...)
return v
}
bodrich, это очень плохое решение, использовать интерфейсы для хранения данных.
GO строго типизированный язык программирования, а использование типа interface{} убивает и безопасность и производительность (как и использование паник).
Скорее всего вы пришли из слабо типизированного языка на подобии js или python и не разобрались ещё с основами GO.