我正在研究 Golang,GORM 以使用 Echo 框架实现 API我正在使用以下结构和函数来生成 JSONtype User struct { gorm.Model Name string `json:"name"` Username string `json:"username"` Password string }func GetUsers(c echo.Context) error { db := db.GetDBInstance() users := []model.User{} db.Find(&users) return c.JSON(http.StatusOK, users)}这是我的 JSON 响应[ { ID: 1, CreatedAt: "2020-04-21T05:28:53.34966Z", UpdatedAt: "0001-01-01T00:00:00Z", DeletedAt: null, name: "", username: "test", Password: "test123" }]我想将其转换为以下 JSON{ data: [{ ID: 1, CreatedAt: "2020-04-21T05:28:53.34966Z", UpdatedAt: "0001-01-01T00:00:00Z", DeletedAt: null, name: "", username: "test", Password: "test123" }]}任何帮助将不胜感激
2 回答
宝慕林4294392
TA贡献2021条经验 获得超8个赞
您可以创建一个新结构来执行此操作
type Data struct{
Data []model.User `json:"data"`
}
func GetUsers(c echo.Context) error {
db := db.GetDBInstance()
users := []model.User{}
db.Find(&users)
data := &Data{
Data: users,
}
return c.JSON(http.StatusOK, data)
}
汪汪一只猫
TA贡献1898条经验 获得超8个赞
您可以创建助手来处理响应,例如:
助手/response_formatter.go
响应结构:
type Response struct {
Data interface{} `json:"data"`
}
响应格式化函数:
func ResponseFormatter(data interface{}) Response {
response := Response{
Data: data,
}
return response
}
调用函数
import helper
...
response := helper.ResponseFormatter(users)
- 2 回答
- 0 关注
- 140 浏览
添加回答
举报
0/150
提交
取消