Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

基于Gin + Vue + Element UI的前后端分离权限管理系统

License

Notifications You must be signed in to change notification settings

bengxia/go-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

26 Commits

Repository files navigation

go-admin

license
基于Gin + Vue + Element UI的前后端分离权限管理系统

✨ 特性

  • 遵循 RESTful API 设计规范

  • 基于 GIN WEB API 框架,提供了丰富的中间件支持(用户认证、跨域、访问日志、追踪ID等)

  • 基于Casbin的 RBAC 访问控制模型

  • JWT 认证

  • 支持 Swagger 文档(基于swaggo)

  • 基于 GORM 的数据库存储,可扩展多种类型数据库

  • 配置文件简单的模型映射,快速能够得到想要的配置

  • 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

📦 本地开发

首次启动说明

# 获取代码
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中查看说明

文档生成

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

About

基于Gin + Vue + Element UI的前后端分离权限管理系统

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 76.9%
  • PLpgSQL 23.1%

AltStyle によって変換されたページ (->オリジナル) /