github.com/hulutech-we…
环境
项目的go.mod文件中,必须为 module goravel 否则会出现错误
go.mod
文件内容应该如下所示:
module goravel
简介
artisan 是一个go的运行环境,可以在该环境下执行go语言的语法,与浏览器的控制台运行js代码同理,且该扩展实现了goravel的内置功能,如数据库db操作,orm操作,cache缓存,秘钥key生成,jwt秘钥等。
tinker 安装
克隆该扩展包,然后放入packages/目录下
注册服务提供者,config.app中:
import "goravel/packages/tinker"
"providers": []foundation.ServiceProvider{
...
&tinker.ServiceProvider{},
}
系统命令:``go run . artisan tinker进入tinker环境,根据提示完成操作 install文件已经下载到本地的情况下,因为网络原因需要这样,如下是一个makefile文件内容 install-yaegi: @bash install.sh -b $(GOPATH)/bin v0.9.0 预加载 进入到tinker目录下,命令行执行 make ,将自动安装所需依赖 运行go generate go generate ./... go mod tidy 数据库方法 db.Find("depts") db.WhereMap("users",map[string]interface{}{"name":"市场部-经理"}) db.WhereNot("users",map[string]interface{}{"name":"市场部-经理"}) db.WhereNotEqual("users","name","市场部-经理") db.WhereIn("users","name", []string{"市场部-经理", "市场部-主管"}) db.WhereLike("users","name", "市场部") db.WhereBetween("users","created_at",2024-08-22 00:00:00, 2024-08-23 23:59:59`)
orm方法,请参考gorm的用法
使用方式为,进入orm下,命令行输入shebang回车,进入shebang多行命令行模式,编写完成后,输入命令:save保存回车,查看命令执行结果,默认引入了goravel/app/models模型。
函数调用参考gorm官方实现方式,可查看gorm官方文档
示例:orm命令行模式下,控制台参考命令如下,
bash go run . artisan tinker
//1-终端命令行命令,完成后回车
选择orm菜单,进入orm tinker环境 // 2-上下箭头选择选项,回车进入
输入命令
shebang
进入多行语法环境模式 // 3-进入go 语言环境
users:=[]models.User{} //4-编写完成后回车
query.Query().Model(&models.User{}).Where("name LIKE ?", "%市场%").Find(&users) //5-编写完成后回车
:save //6-输入:save 后回车保存查看执行结果
user:=models.User{} //1-编写完成后回车 query.Query().Model(&models.User{}).Where("name LIKE ?", "%小%").FindOne(&user) //2-编写完成后回车 :save //3-输入:save 后回车保存查看执行结果 文件扫描,tinker 环境下,扩展会观察app/models下的模型文件,当有变化时,会自动执行makefile文件,这个过程需要一定时间,请耐心等待 示例:可查看example.md文件