在golang上使用接口和类型

时间:2015-02-16 13:05:21

标签: go

我正在使用GORM进行数据库查询的分页器的通用实现

type Cursor struct {
    Data []interface{}
    Next int
}

type Paginator struct {
    PageSize int
    Model    interface{}
}

问题是,我不知道如何实例化一个新数组以从DB检索结果,具体取决于具有此行的Paginator.Model类型

db.Model(paginator.Model).Limit(paginator.PageSize).Offset(page - 1).Find(&data)

如何实例化data以使用Find

1 个答案:

答案 0 :(得分:-1)

您的问题是不知道如何创建切片?

你可以这样做:

var data []interface{}{} // make an empty slice of type interface{}

如果您尝试创建Custor结构,您还可以执行以下操作:

c := Cursor{Data: []interface{}{}}

Playground