我有以下处理程序
// Create database
// swagger:route POST /databases createDatabase
//
// Create database
//
// Security:
// oauth2:
//
// responses:
// 202: Database
// 401: Error
// ...
func (h Handler) Create(c *gin.Context) {
var request CreateDatabaseRequest
if err := handler.DataBinder(c, &request); err != nil {
_ = c.Error(err)
return
}
...
}
以及我通过请求正文发布的以下结构
// CreateDatabaseRequest
// swagger:parameters createDatabase
// in: body
// required: true
//
// Create database input parameter
type CreateDatabaseRequest struct {
Name string `json:"name" binding:"required"`
GroupId uint `json:"groupId" binding:"required"`
}
但是当我生成我的文档时, CreateDatabaseRequeststruct 的属性显示为两个单独的查询参数。
我可以通过创建一个如下定义的附加虚拟结构来修复它
// swagger:parameters createDatabase
type _ struct {
// Create database parameter
// in: body
// required: true
Body database.CreateDatabaseRequest
}
但我真的不喜欢这样,宁愿只记录我的请求参数。
关于如何正确记录我的结构以便它显示为请求正文参数而不是查询字符串的任何线索?