ジンプロジェクトを0から作成する
プロジェクトを構築する
プロジェクトの初期化操作
新しいプロジェクト フォルダー (デモ フォルダーなど) を作成します。作成が完了したら、フォルダー内のコマンド ライン ツールを右クリックし、次のように入力します。
go init mod demo
デモはカスタマイズできます。名前はフォルダー名と同じにしてください。
因为
:
この手順では go のパッケージ管理ディレクトリを作成します。作成された mod ファイルの先頭には次の行がありますモジュールのデモは次のとおりです
module demo
プロジェクト内のファイルは相互に参照しており、このモジュールに従って場所を取得する必要があります
引用方式如下
import "demo/项目下的文件夹名称"
必要なライブラリを追加します。このプロジェクトには
gin库:
gin フレームワークが必要です。これは主にルートの生成、ルート管理などに使用されます
gorm库:
。主にデータベースの操作を簡素化するために使用されます
mysql库:
。mysql データベースなどに接続して
viper库:
、 yaml ファイルを解析し、設定ファイルを読み取ります。
これらのライブラリをインストールする前に、パッケージ管理モードを mod モードに切り替えることができます。
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
次に、次のようにこれらのライブラリを現在のフォルダーにインストールします。
//-u可以不加,-u是为了保证拉取最新的包
go get -u github.com/gin-gonic/gin
go get -u gorm.io/driver/mysql
go get -u gorm.io/gorm
go get -u github.com/spf13/viper
ディレクトリ構造を作成する
mvcの設計パターンに従って、フォルダーディレクトリを作成します
demo
│ README.md
│ main.go //入口文件
└───conf //基础配置,定义数据库名称密码等
│ │ conf.go
│ │ config.yaml
└───models // domain+dao层 - models文件夹,定义实体类,查询数据库。
│ │ initDB.go
└───routers // controller层 - routers文件夹,主要执行与前端的api的映射,调用service层的方法
│ │ router.go //初始化router操作等
│ └───api //api文件夹下分类接口所属模块
└───service //service层 - service文件夹,主要对获取到的数据执行逻辑上的处理,并且返回到controller层
│ │ xxx.go
└───logs //用来存储logs记录
プロジェクトの詳細はこちらを参照 https://github.com/jiangbo66666/gin-vue-microBlog
このプロジェクトは、Weibo に似たソーシャル ツールの作成に取り組んでおり、現在は初期段階にあり、今後も継続される予定です。。。。