Skip to content

will110/ginhelper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
wangwei
Nov 20, 2019
3666b3a · Nov 20, 2019

History

10 Commits
Aug 22, 2019
Nov 4, 2019
Oct 29, 2019
Nov 20, 2019
Aug 22, 2019
Nov 4, 2019
Nov 20, 2019
Nov 20, 2019
Nov 4, 2019

Repository files navigation

ginhelper

ginhelper 是一个gin web框架的快速搭建项目的助手,帮助你快速开发项目、简单、易用。

一、使用方法

1、下载

go get -u github.com/will110/ginhelper

2、生成项目

(1)、如果你使用go mod管理项目,操作如下,这里以windows为例,其他系统操作一样,这里的操作都在d:/goMod/test目录下进行。

1、生成 go.mod文件

    set GO111MODULE=on
    go mod init hello


2、生成项目

    ginhelper create


3、更新依赖包

    go mod tidy


4、编译

    go build


5、运行

    ./hello
    
    
6、测试

    curl http://127.0.0.1:8099/user/get-list-query?user=a3c&password=23
    或者直接在浏览器上访问,返回内容如下
    {
      "run_time": 0,
      "code": -110020,
      "message": "Key: 'Login.User' Error:Field validation for 'User' failed on the 'eq' tag",
      "data": ""
    }


7、review code

    你可以通过某个开发工具,如:goland, 来打开你的项目,然后慢慢、静静的看一下代码

(2)、如果你只是在src目录下开发项目,你可以这样操作,这里以windows为例,其他系统操作一样,这里的操作都在d:/goProject/src/hiworld目录下进行。

1、创建项目

    ginhelper create
   
2、下载其他的依赖

   go get -u github.com/gin-gonic/gin
   go get github.com/astaxie/beego/config  #这里我们可以使用beego的config, 如果你还想使用beego的其他模块请自行下载,如:httplib、logs、cache等模块
   go get github.com/beego/bee  #可选下载
   github.com/jinzhu/gorm
   github.com/go-redis/redis
   
   
3、编译

   go build 或者bee run
   
   
4、运行

   ./hiworld
   
   
5、测试
   
   curl http://127.0.0.1:8099/user/get-list-query?user=a3c&password=23
   或者直接在浏览器上访问,返回内容如下
   {
     "run_time": 0,
     "code": -110020,
     "message": "Key: 'Login.User' Error:Field validation for 'User' failed on the 'eq' tag",
     "data": ""
   }

目录介绍

command  
    脚本目录,这个目录下可以存放一些脚本的业务逻辑,你根据自己业务的不同,然后创建自己的目录
    
conf
    配置文件目录,这个目录下存放了各个环境的配置文件,然后我们只需要在环境变量中配置WebRunMode对应的值即可.
    比如: WebRunMode=test, 那么使用的配置文件就是test_app.conf, 而local_app.conf是本地配置文件优先级高于
    任何配置文件,如果你在test_app.conf中设置name = "hi", 然后在local_app.conf中设置name = "hello", 那么最终
    name的值是hello。
    
controller
    控制器目录,这里是接口地址的入口点

filter
    数据过滤层, 对每个接口请求过来的数据,进行严格的清洗,然后组装相应的数据,以便后面的程序使用

model
    model层,可以存放一些关于表对应的结构体、字段或者简单操作表数据的方法

pkg
    pkg存放自己封装的公共方法或公共变量、常量等
    
router
    接口地址的路由配置
    
runtime
    存放运行时的一些缓存文件、日志等
    
servicelogic
    业务逻辑层,可以把大量的业务逻辑写在这里
    
static
    静态目录,可以存放图片、文件等
    
test
    接口测试目录

当然了大家也可以根据自己的喜好设计自己喜欢的目录结构,项目框架整合了mysql、redis、mongodb等相关配置, 默认代码是注释的,你需要把mysql、redis、mongodb的配置文件进行配置,然后打开注释,试着运行一下。