在 Gorm 中使用分页非常简单,只需要在查询语句中使用Limit
和Offset
函数即可。下面是一个简单的示例代码:
func GetUsers(pageIndex, pageSize int) ([]User, error) {
var users []User
offset := (pageIndex - 1) * pageSize
err := db.Model(&User{}).Offset(offset).Limit(pageSize).Find(&users).Error
if err != nil {
return nil, err
}
return users, nil
}
上述代码通过调用Model
方法来指定要查询的表,然后使用Offset
函数来指定偏移量(即跳过多少个记录),使用Limit
函数来指定要获取的记录数。最后使用Find
方法来执行查询操作并将结果存入users
数组中。
在实际使用时,需要根据不同的需求进行定义查询函数,例如根据用户名、根据年龄等条件进行查询。