文章分类 - GO之Gin实战速学篇
gin是go在web开发领域比较容易上手且性能卓越的web框架(注意:微服务框架和web框架是不一样的)
摘要:一:简单连接池设置 package src import ( "fmt" "github.com/jinzhu/gorm" "time" ) var DBHelper *gorm.DB var err error func init() { DBHelper,err=gorm.Open("mysql
阅读全文
摘要:一:模型数据 type Topics struct { TopicID int `json:"id" gorm:"PRIMARY_KEY"` TopicTitle string `json:"title" binding:"min=4,max=10"` TopicShortTitle string
阅读全文
摘要:一:创建模型 仔细看文档 http://gorm.io/docs/models.html 忘记了就查,没必要背,说不定下个月公司就换别的ORM框架了 假设我们有个帖子类别表 topic_class 字段为: 1:class_id int 自增 2:class_name 类别名 varchaar(50
阅读全文
摘要:一:引言 在基础课程中,我们学习到简单手工代码:驱动 https://github.com/go-sql-driver/mysql 今天我们介绍和引入Gorm: github地址: https://github.com/jinzhu/gorm 英文文档:http://gorm.io 中文文档:htt
阅读全文
摘要:一:引言 上篇api POST /v1/topics 外加JSON参数,即可进行帖子的新增 注意点POST /v1/topics 是提交一条帖子,往往我们api由于各种逼格原因,还会允许提交多条帖子 譬如地址是POST /v1/mtopics 今天我们来看下,多条帖子的提交如何使用验证器进行验证;
阅读全文
摘要:一:引言:上一篇我们使用了验证器,这也是一个非常强大的验证器,今天这篇我们来讲下自定义的验证器,并且结合正则来验证Json的参数,其实我们内置的验证器,也许不符合我们的要求,那么这个时候就需要 加入我们自己的验证规则; 假设请求topic详细时 可以是: /topics/123(id形式) 也可以是
阅读全文
摘要:一:内置验证器的初步使用 Json参数绑定 如果不传tag 标记json 映射的这个参数: 如果传了该参数 但是值为空,也为这个报错 验证器来源于一个第三方库https://github.com/go-playground/validator文档在此:https://godoc.org/gopkg.
阅读全文
摘要:一:模型: Model 现在已经很灵活,除了可以跟数据库映射,还可以跟Redis,MQ 或者其他的一些业务相关的 模型;今天讲到的参数其实也可以做成一个参数模型; 这里的模型不仅仅局限于和数据库映射的struct,先创建一个未来可能要跟我们数据库映射的struct(Topic),也就是说将来可能有张
阅读全文
摘要:一:简单Dao层代码封装 新建文件存放我们话题相关的Dao层 main主函数如下: Dao层代码封装如下: 接下来新增点需求: POST/v1/topics 外加JSON参数,即可进行帖子的新增(注意,这玩意是需要登录的) DELETE/v1/topics/123 删除帖子(注意这玩意儿也要登录)
阅读全文
摘要:一:是否一定要用MVC模式 比较复杂的模块 可以拆分做成微服务的形式 二:路由的分组 上篇路由设置如果比较多,就会很麻烦,可以通过路由分组来管理;
阅读全文
摘要:一:假设路由规则如下: 传统的一些API路径设计方式(仔细看看行不行)GET /topic/{topic_id} 获取帖子明细GET /topic/{user_name} 获取用户发布的帖子列表GET /topic/top 获取最热帖子列表 浏览器请求: gin的路由使用的是httprouter库(
阅读全文
摘要:github地址https://github.com/gin-gonic/gin 分几步1、随便创建一个文件夹(不要有中文、空格和奇怪的字符串,没有为什么)2、在 api.jtthink.com下创建topic ,代表 话题相关API3、用goland 打开topic目录 在golang中执行命令
阅读全文

浙公网安备 33010602011771号