51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

基于golang gin的脚手架GoSkeleton

# 基于golang gin的脚手架GoSkeleton {#基于golang-gin的脚手架goskeleton}

本文讲述基于golang gin的脚手架GoSkeleton的使用教程。GoSkeleton是基于gin框架集成了各种常用功能,可以作为后台api开发脚手架。

# 1. 下载工程代码 {#_1-下载工程代码}

git clone git@gitee.com:daitougege/GinSkeleton.git

# 2. 配置数据库 {#_2-配置数据库}

修改config/gorm_v2.yml文件中的数据库配置

  Mysql:
    Write:
      Port: 3306                        #注意,非3306,请自行调整
      User: "root"
      Pass: "123456"
    IsOpenReadDb: 0                     # 是否开启读写分离配置(1=开启、0=关闭),IsOpenReadDb=1,Read 部分参数有效,否则Read部分参数直接忽略
    Read:
      Port: 3306                        #注意,非3306,请自行调整
      User: "root"
      Pass: "123456"

# 3. 初始化数据库 {#_3-初始化数据库}

导入数据库脚本database/db_demo_mysql.sql

# 4. 运行项目 {#_4-运行项目}

可以使用goland或vscode运行项目。

# 4.1 使用goland运行项目 {#_4-1-使用goland运行项目}

和其它项目的运行方法没有任何区别, 直接右键运行main函数即可。

# 4.2 使用vscode运行项目 {#_4-2-使用vscode运行项目}

默认情况下,会运行失败,提示如下:

2020/12/11 13:44:24 config.yml 配置文件不存在stat /data/workspace/wangshibiao/tmp/GinSkeleton/cmd/web/config/config.yml: no such file or directory

因为该程序会去指定目录(使用的是os.Getwd()函数的返回值,该函数在goland中执行返回的是项目根目录,然后在vscode中执行是当前运行的入口文件main.go所在目录)下查找配置文件,但实际上配置文件是在项目根目录下,所以报错。
只需在launch.json中增加1项配置即可"cwd": "${workspaceRoot}", 完整配置如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "GinSkeleton",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "program": "${workspaceRoot}/cmd/web/main.go",
            "cwd": "${workspaceRoot}",
            "env": {},
            "args": []
        }
    ]
}

# 5. 官网 {#_5-官网}

仓库地址 (opens new window)
详细教程请前往官网 (opens new window)

赞(5)
未经允许不得转载:工具盒子 » 基于golang gin的脚手架GoSkeleton