当前位置: 首页 > news >正文

房产网站设计模板推广

房产网站设计模板,推广,网站 app开发 财务做帐,wordpress 模版 摄影controller 模型绑定与参数校验 gin框架提供了多种方法可以将请求体的内容绑定到对应struct上,并且提供了一些预置的参数校验 绑定方法 根据数据源和类型的不同,gin提供了不同的绑定方法 Bind, shouldBind: 从form表单中去绑定对象BindJSON, shouldB…

controller 模型绑定与参数校验

gin框架提供了多种方法可以将请求体的内容绑定到对应struct上,并且提供了一些预置的参数校验

绑定方法

根据数据源和类型的不同,gin提供了不同的绑定方法

  • Bind, shouldBind: 从form表单中去绑定对象
  • BindJSON, shouldBindJSON: 这两个方法是从json表单中去绑定对象
  • 还有从xml,protobuf等等
参数校验

gin提供了一系列预置的参数校验,可以参考官方文档。 用binding 标签

  • required 必须参数

  • number 要求数字

  • omitempty 允许为空

  • email 邮件格式

等等

实例
package courseimport ("github.com/gin-gonic/gin""net/http"
)func InitRouters(r *gin.Engine) {//使用路由分组api := r.Group("api")initCourse(api)
}func initCourse(group *gin.RouterGroup) {// 路由分组v1 := group.Group("/v1"){// /api/v1/course// 路径携带参数v1.GET("/course/search/:id", course.Get)v1.POST("/course/add/:id", course.Add)v1.PUT("/course/edit/:id", course.Edit)v1.DELETE("/course/del", course.Delete)}
}// 模型绑定, gin 引用了 validator,有一些预置标签
type course struct {Name string 		`json:"name"     form:"name" binding:"required"`Teacher string		`json:"teacher"  form:"teacher" binding:"required"`Duration int		`json:"duration" form:"duration" binding:"number"`
}func Add(c *gin.Context) {req := &course{}// 从form表单去绑定 c.Bind() c.ShouldBind()// 从json里去取值 c.BindJSON()// 带should的bind 可以去返回错误,不带的会直接响应请求err := c.ShouldBindJSON(req)if err != nil {c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error(),})return}c.JSON(http.StatusOK, req)
}func Get(c *gin.Context) {// 获取路径上的参数id := c.Param("id")// 都是gin.context作为入参c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"id": id,})
}func Edit(c *gin.Context) {req := &course{}err := c.ShouldBindJSON(req)if err != nil {c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error(),})return}c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"req": req,})
}func Delete(c *gin.Context) {// 从queryString 获取id := c.Query("id")// 都是gin.context作为入参c.JSON(http.StatusOK, gin.H{"method": c.Request.Method,"path": c.Request.URL.Path,"id": id,})
}
测试

在这里插入图片描述

http://www.hotlads.com/news/5437.html

相关文章:

  • 一站式服务英文无锡网站制作
  • 专业的网站开发团队网络营销推广活动有哪些
  • 做爰网站有哪些广东队对阵广州队
  • 长春做商业平台网站宁波seo外包代运营
  • 网站建设策划方案重庆森林粤语完整版在线观看免费
  • 网站建设勹金手指科捷14上海专业seo公司
  • 厦门建设工程信息造价网站友情链接怎么连
  • 合肥高端网站开发企业建网站一般要多少钱
  • 自己做的网站怎么上传到网络百度在全国有哪些代理商
  • 手机网站技术方案济南seo公司报价
  • 莱州网站制作seo优化前景
  • 建设的网站百度搜不到网络域名怎么查
  • 创业小项目山西网络营销seo
  • 传奇私服广告网站怎么做指数基金是什么意思
  • wordpress最快仿站郑州今天刚刚发生的新闻
  • jsp购物网站开发 论文如何做网站推广优化
  • 企业建立网站的原因欧美seo查询
  • b2b网站优化怎么做seo搜索优化邵阳
  • 怎么用新浪云做淘宝客网站百度网络推广怎么收费
  • 视频网站怎么做算法长沙seo推广优化
  • 网站策划做营销推广高质量外链平台
  • 家装网站建设网络推广员的工作内容和步骤
  • php网站开发课程网店运营在哪里学比较好些
  • 关注网站怎么做网站seo视频
  • 网站备案情况查询贵州seo技术查询
  • 如何选择电商网站建设普通话手抄报简单又漂亮
  • 海康打开网站显示建设中百度 个人中心首页
  • 北京有一个公司打电话做网站认证seo赚钱
  • 网站建设合同要求百度浏览器官网
  • 做网站开发很赚钱吗南京市网站seo整站优化