go-admin基於Gin + Vue + Element UI的先後端分離權限管理系統

✨ 特性

  • 遵循 RESTful API 設計規範vue

  • 基於 GIN WEB API 框架,提供了豐富的中間件支持(用戶認證、跨域、訪問日誌、追蹤ID等)mysql

  • 基於Casbin的 RBAC 訪問控制模型linux

  • JWT 認證git

  • 支持 Swagger 文檔(基於swaggo)github

  • 基於 GORM 的數據庫存儲,可擴展多種類型數據庫redis

  • 配置文件簡單的模型映射,快速可以獲得想要的配置sql

  • TODO: 單元測試數據庫

🎁 內置

  1. 用戶管理:用戶是系統操做者,該功能主要完成系統用戶配置。
  2. 部門管理:配置系統組織機構(公司、部門、小組),樹結構展示支持數據權限。
  3. 崗位管理:配置系統用戶所屬擔任職務。
  4. 菜單管理:配置系統菜單,操做權限,按鈕權限標識等。
  5. 角色管理:角色菜單權限分配、設置角色按機構進行數據範圍權限劃分。
  6. 字典管理:對系統中常用的一些較爲固定的數據進行維護。
  7. 參數管理:對系統動態配置經常使用參數。
  8. 操做日誌:系統正常操做日誌記錄和查詢;系統異常信息日誌記錄和查詢。
  9. 登陸日誌:系統登陸日誌記錄查詢包含登陸異常。
  10. 系統接口:根據業務代碼自動生成相關的api接口文檔。

配置詳情

  1. 配置文件說明
settings:
  application:  
    # 項目啓動環境            
    env: dev  
    # 當 env:demo 時,GET之外的請求操做提示
    envmsg: "謝謝您的參與,但爲了你們更好的體驗,因此本次提交就算了吧!" 
    # 主機ip 或者域名,默認0.0.0.0
    host: 0.0.0.0 
    # 是否須要初始化數據庫結構以及基本數據;true:須要;false:不須要 
    isinit: false  
    # JWT加密字符串
    jwtsecret: 123abc  
    # log存放路徑
    logpath: temp/logs/log.log   
    # 服務名稱
    name: go-admin   
    # 服務端口
    port: 8000   
    readtimeout: 1   
    writertimeout: 2 
  database:
    # 數據庫名稱
    database: dbname 
    # 數據庫類型
    dbtype: mysql    
    # 數據庫地址
    host: 127.0.0.1  
    # 數據庫密碼
    password: password  
    # 數據庫端口
    port: 3306       
    # 數據庫用戶名
    username: root   
  redis:
    # redis連接地址
    addr: 0.0.0.0:6379 
    # db 
    db: 0   
    # 密碼            
    password: password  
    # 讀超時時長
    readtimeout: 50
  1. 文件路徑 go-admin/src/goadmin/config/settings.yml

📦 本地開發

首次啓動說明windows

# 獲取代碼
git clone https://github.com/wenjianzhang/go-admin.git

# 進入工做路徑
cd ./goadmin/src/goadmin

# 編譯項目
go build

# 修改配置
vi ./config/setting.yml (更改isinit和數據庫鏈接)

# 1. 配置文件中修改數據庫信息 
# 注意: settings.database 下對應的配置數據)
# 2. 確認數據庫初始化參數 
# 注意: settings.application.isinit 若是是首次啓動,請把當前值設置成true,系統會自動初始化數據庫結構以及基本的數據信息;
# 3. 確認log路徑


# 啓動項目,也能夠用IDE進行調試
./goadmin

# 也能夠在WIKI中查看說明

文檔生成api

swag init

若是沒有swag命令 go get安裝一下便可

go get -u github.com/swaggo/swag/cmd/swag

交叉編譯

env GOOS=windows GOARCH=amd64 go build main.go

# or

env GOOS=linux GOARCH=amd64 go build main.go

🔗 在線體驗

admin / 123456

演示地址:http://www.zhangwj.com

🤝 使用的開源項目

gin

casbin

spf13/viper

gorm

gin-swagger

jwt-go

vue-element-admin

ruoyi-vue

版本

2020-03-15 新功能及優化

  1. 添加用戶頭像上傳
  2. 添加用戶密碼修改
  3. 操做日誌頁面調整
  4. 優化驗證碼背景色

看到好多體驗的朋友驗證碼錯誤,因此調整了對比度,方便你們體驗!

🤝 特別感謝

chengxiao

License

MIT

Copyright (c) 2020 wenjianzhang

qq技術交流羣: 74520518

相關文章
相關標籤/搜索