32 lines
922 B
Go
32 lines
922 B
Go
|
package animal
|
||
|
|
||
|
import (
|
||
|
"catface/app/global/consts"
|
||
|
"catface/app/http/controller/web"
|
||
|
"catface/app/http/validator/common/location"
|
||
|
"catface/app/http/validator/core/data_transfer"
|
||
|
"catface/app/utils/response"
|
||
|
|
||
|
"github.com/gin-gonic/gin"
|
||
|
)
|
||
|
|
||
|
type Create struct {
|
||
|
Name string `form:"name" json:"name" binding:"required"`
|
||
|
Poi location.Poi `form:"poi" json:"poi"`
|
||
|
}
|
||
|
|
||
|
func (c Create) CheckParams(context *gin.Context) {
|
||
|
if err := context.ShouldBind(&c); err != nil {
|
||
|
response.ValidatorError(context, err)
|
||
|
return
|
||
|
}
|
||
|
|
||
|
extraAddBindDataContext := data_transfer.DataAddContext(c, consts.ValidatorPrefix, context)
|
||
|
if extraAddBindDataContext == nil {
|
||
|
response.ErrorSystem(context, "Animal Create 表单验证器json化失败", "")
|
||
|
} else {
|
||
|
// 验证完成,调用控制器,并将验证器成员(字段)递给控制器,保持上下文数据一致性
|
||
|
(&web.Animals{}).Create(extraAddBindDataContext)
|
||
|
}
|
||
|
}
|