go-zero model生成

2022-04-25 17:47 更新

model生成

首先,下載好演示工程后,我們以u(píng)ser的model來(lái)進(jìn)行代碼生成演示。

前言

model是服務(wù)訪問(wèn)持久化數(shù)據(jù)層的橋梁,業(yè)務(wù)的持久化數(shù)據(jù)常存在于mysql,mongo等數(shù)據(jù)庫(kù)中,我們都知道,對(duì)于一個(gè)數(shù)據(jù)庫(kù)的操作莫過(guò)于CURD, 而這些工作也會(huì)占用一部分時(shí)間來(lái)進(jìn)行開(kāi)發(fā),我曾經(jīng)在編寫一個(gè)業(yè)務(wù)時(shí)寫了40個(gè)model文件,根據(jù)不同業(yè)務(wù)需求的復(fù)雜性,平均每個(gè)model文件差不多需要 10分鐘,對(duì)于40個(gè)文件來(lái)說(shuō),400分鐘的工作時(shí)間,差不多一天的工作量,而goctl工具可以在10秒鐘來(lái)完成這400分鐘的工作。

準(zhǔn)備工作

進(jìn)入演示工程book,找到user/model下的user.sql文件,將其在你自己的數(shù)據(jù)庫(kù)中執(zhí)行建表。

代碼生成(帶緩存)

方式一(ddl)

進(jìn)入service/user/model目錄,執(zhí)行命令

$ cd service/user/model
$ goctl model mysql ddl -src user.sql -dir . -c
Done.

方式二(datasource)

$ goctl model mysql datasource -url="$datasource" -table="user" -c -dir .
Done.

$datasource為數(shù)據(jù)庫(kù)連接地址

方式三(intellij 插件)

在Goland中,右鍵user.sql,依次進(jìn)入并點(diǎn)擊New->Go Zero->Model Code即可生成,或者打開(kāi)user.sql文件, 進(jìn)入編輯區(qū),使用快捷鍵Command+N(for mac OS)或者 alt+insert(for windows),選擇Mode Code即可


驗(yàn)證生成的model文件

查看tree

$ tree
.
├── user.sql
├── usermodel.go
├── usermodel_gen.go
└── vars.go


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)