Go-sword(利刃)是一款基于Go语言的可视化web管理后台生成工具git
目标就是快速的建立CRUD可视化的后台github
根据MySQL的表结构,建立完整的管理后台界面,开发者无需再重复手动的建立具备CRUD能力的页面
只须要点击按钮便可生成完整的管理后台golang
go get -u github.com/sunshinev/go-sword
安装完成后,确保go-sword
命令在GOPATH/bin
目录下,可执行web
go-sword -db {db_database} -password {db_password} -user {db_uesr} -module {module_name}
例如:go-sword -db blog -password 123456 -user root -module go-sword-app
数据库
以上命令,就是链接数据库blog
,用户名root
,密码12345
,在go-sword命令的当前目录下建立项目go-sword-app
后端
启动成功的提示app
Go-Sword will create new project named go-sword-app in current directory [Server info] Server port : 8080 Project module : go-sword-app [db info] MySQL host : localhost MySQL port : 3306 MySQL user : root MySQL password : 123456 Start successful, server is running ... Please request: http://localhost:8080
+---------------------------------------------------+ | | | Welcome to use Go-Sword | | | | Visualized tool | | Fastest to create CRUD background | | https://github.com/sunshinev/go-sword | | | +---------------------------------------------------+ Usage of go-sword: // 要链接的数据库信息 -db string MySQL database -host string MySQL Host (default "localhost") // 重要:module参数单独做解释 -module string New project module, the same as 'module' in go.mod file. (default "go-sword-app/") // go-sword 服务启动的默认端口 -p string Go-sword Server port (default "8080") -password string MySQL password -port int MySQL port (default 3306) -user string MySQL user
-module
参数是表明要建立的项目名称,同时也是新项目go.mod
文件中的module
字段的值,这点请务必保持一致。工具
新项目会在运行go-sword
命令的当前目录下,直接建立module
目录,做为新项目优化
Start successful, server is running ... Please request: http://localhost:8080
根据服务启动的提示,直接点击http://localhost:8080
便可进入web的可视化工具页面spa
Preview
按钮,便可渲染出须要建立的文件select all
所有选择,首次建立包含了项目启动必需的核心文件Generate
按钮,既能够看到提示文件建立成功注意:
select diff & new
按钮,而后点击Generate
按钮进入到咱们新建立的项目目录
➜ test tree -L 2 . └── go-sword-app ├── controller ├── core ├── go.mod ├── go.sum ├── main.go ├── model ├── resource ├── route └── view
好比说咱们,刚刚是在test
目录运行的go-sword
命令,建立的项目就是test/go-sword-app
咱们进入test/go-sword-app
目录下按照如下命令启动项目
利用go mod
初始化项目,这里的module
就是咱们前面讲到的要与项目名称保持一致!!
go mod init {module}
go run main.go
而后会看到下面的提示,点击http://localhost:8082
既能够进入后台管理界面
Enjoy your system ^ ^ Generated by Go-sword https://github.com/sunshinev/go-sword [Server info] Server port : 8082 [db info] MySQL host : localhost MySQL port : 3306 MySQL user : root MySQL password : 123456 Start successful, server is running ... Please request: http://localhost:8082
module
的参数,可能还会有更好的解决方案若是想要自定义的话,那么须要注意,Go-sword 项目能够打包成一个那单独的命令来执行,由于将全部的静态文件也进行了打包
静态文件压缩命令以下:
go-bindata -o assets/resource/dist.go -pkg resource resource/dist/...
go-bindata -o assets/stub/stub.go -pkg stub stub/...
go-bindata -o assets/view/view.go -pkg view view/...