废话不多说,公司要用这个框架,那久赶紧学起来,参考文档地址:https://goframe.org/pages/viewpage.action?pageId=1114203
一、安装gf
gf是goframe的cli命令工具
目的:不为别的,就是为了快速创建一个项目 gf init 项目名
注意:再安装前使用一下gf,看看是否给 git fetch 设置了别名,如果设置了别名,需要取消掉。
比如安装了iterm安装了zsh的git插件,那么需要取消,操作如下:
需要注释掉这个别称。
处理好以上步骤后,安装gf,github地址:https://github.com/gogf/gf-cli/blob/master/README_ZH.MD
直接下载二进制文件,然后 按照文档说明安装。
chmod +x gf && ./gf install
二、创建项目
cd到你的工作目录下,直接运行,这里我的项目取名叫my_go_frame
gf init my_go_frame
创建好后,项目结构目录如下:
项目目录的分层结构:
三、自动生成dao和model
1、修改config配置,增加gf的cli配置:
# GF-CLI工具配置
[gfcli]
# 自定义DAO生成配置(默认是读取database配置)
[[gfcli.gen.dao]]
link = "mysql:root:root@tcp(127.0.0.1:3306)/go_frame"
tables = "user"
文件位置:如下
接下来就是愉快的自动生成DAO 和MODEL文件了,感觉个比JAVA的手动建DAO和entity还好使:直接使用命令:gf gen dao 和gf gen model
自动生成的文件如下:
这里需要理解下这个文件夹:internal,这个其实按照面向对象思想来理解就是 internal中的都是 "private" 对象,而对外暴露的是dao下面直接的user.go里规定的对象,这个相当于pulbic,这样做的目的:
https://goframe.org/pages/viewpage.action?pageId=3672526
四、写接口
1、数据校验
注意:写在model中的model中,而不是放到model的internal中
通过添加v的标签形式来过滤字段。