我想通过使用 NAME 来获取数据库中的所有记录,但是,如果我使用 ALL,它会显示 500 内部错误,但是,如果我保留一个(JSON),我只会得到一条记录。按名称获取所有记录的解决方案是什么?func (uc UserController) Filter(c *gin.Context) { var name = c.Params.ByName("Name") var json models.User err := c.Bind(&json) if err != nil { log.Fatal("error") return } json.Name = name fi := bson.D{{"Name", name}} err = uc.session.DB(DB_NAME).C(DB_COLLECTION).Find(fi).All(json) if err == nil { c.Writer.Header().Set("Content-Type", "application/json") c.JSON(201, &json) } else { c.JSON(500, gin.H{"result": "An error occured"}) }}
1 回答
倚天杖
TA贡献1828条经验 获得超3个赞
您应该将数组 ( var json []models.User
) 传递给All(&json)
函数,但您传递的是一项 ( var json models.User
)。
- 1 回答
- 0 关注
- 108 浏览
添加回答
举报
0/150
提交
取消