我无法将结构对象附加到 golang 中的数组对象(GIN 框架)?



我无法在golang(GIN Framework(中将结构对象附加到数组对象

func (dish *DishesController) RetrieveMultipleDishesItemsByCategoryId(c *gin.Context) {
//TODO 1 :Bind Json from request body
//          2: Call function for read document in mongodb by categoryId
//          3. Response data, finish
var categoryFromRequest DishesModel.CategoryFromRequest
if err := c.ShouldBindJSON(&categoryFromRequest); err != nil {
c.AbortWithStatusJSON(http.StatusBadRequest, gin.H{"message": err.Error()})
return
}
for _, items := range categoryFromRequest.Category{
// loop call function for get dishes info
data, err := newService.FindDishesByID(items.Id)
if err != nil {
c.AbortWithStatusJSON(http.StatusBadRequest, gin.H{"message": err.Error()})
return
}
categoryFromRequest.Category = append(categoryFromRequest.Category, data)
}

在此处输入图像描述

在此处输入图像描述

Go中的Slice/Array的所有元素都必须是相同的数据类型。由于categoryFromRequest.Category([]struct{…}的类型(和data(DishesModel.DischesDataModel的类型(不是相同的类型,因此不能将其附加到数组中。

最新更新