先看一下效果,就是根据查询的结果进行分页嘛,要可以设置页码和页码数据的条目
请求:
http://localhost:8089/nufe/search?search=301624301&page=3&page_size=4
核心代码
func (con SearchController) SearchIndex(c *gin.Context) {
QuestionBank := make([]models.QuestionBank, 0)
Db := models.DB
page, _ := strconv.Atoi(c.Query("page"))
pageSize, _ := strconv.Atoi(c.Query("page_size"))
if search, isExist := c.GetQuery("search"); isExist == true {
Db = Db.Where("nc_subject like ?", "%"+search+"%")
}
if page > 0 && pageSize > 0 {
Db = Db.Limit(pageSize).Offset((page - 1) * pageSize)
}
if err := Db.Find(&QuestionBank).Error; err != nil {
fmt.Println(err.Error())
}
c.JSON(http.StatusOK, gin.H{
"code": 0,
"page": page,
"pageSize": pageSize,
"data": QuestionBank,
})
}