特性
- 遵循 RESTful API 設計規範
- 基於 GIN WEB API 框架,提供了豐富的中間件支持(用戶認證、跨域、訪問日誌、追蹤ID等)
- 基於Casbin的 RBAC 訪問控制模型
- JWT 認證
- 支持 Swagger 文檔(基於swaggo)
- 基於 GORM 的數據庫存儲,可擴展多種類型數據庫
- 配置文件簡單的模型映射,快速能夠得到想要的配置
- TODO: 單元測試
內置
- 用戶管理:用戶是系統操作者,該功能主要完成系統用戶配置。
- 部門管理:配置系統組織機構(公司、部門、小組),樹結構展現支持數據權限。
- 崗位管理:配置系統用戶所屬擔任職務。
- 菜單管理:配置系統菜單,操作權限,按鈕權限標識等。
- 角色管理:角色菜單權限分配、設置角色按機構進行數據範圍權限劃分。
- 字典管理:對系統中經常使用的一些較為固定的數據進行維護。
- 參數管理:對系統動態配置常用參數。
- 操作日誌:系統正常操作日誌記錄和查詢;系統異常信息日誌記錄和查詢。
- 登錄日誌:系統登錄日誌記錄查詢包含登錄異常。
- 系統接口:根據業務代碼自動生成相關的api接口文檔。
本地開發
首次啟動說明
<code># 獲取代碼
git clone https://github.com/wenjianzhang/go-admin.git
# 進入工作路徑
cd ./go-admin/src/go-admin
# 編譯項目
go build
# 修改配置
vi ./config/setting.yml (更改isinit和數據庫連接)
# 1. 配置文件中修改數據庫信息
# 注意: settings.database 下對應的配置數據)
# 2. 確認數據庫初始化參數
# 注意: settings.application.isinit 如果是首次啟動,請把當前值設置成true,系統會自動初始化數據庫結構以及基本的數據信息;
# 3. 確認log路徑
# 啟動項目,也可以用IDE進行調試
./go-admin
# 也可以在WIKI中查看說明/<code>
文檔生成
<code>swag init /<code>
如果沒有swag命令 go get安裝一下即可
<code>go get -u github.com/swaggo/swag/cmd/swag/<code>
交叉編譯
<code>env GOOS=windows GOARCH=amd64 go build main.go
# or
env GOOS=linux GOARCH=amd64 go build main.go/<code>
在線體驗
admin / 123456
演示地址:http://www.zhangwj.com
閱讀更多 雲瑄軟件 的文章