登录 | 地图 欢迎访问【UZ导航】
当前位置:网站首页 > 推荐 > Admin > 正文

Go 项目推荐之 go-admin

admin 2020-12-21 132 浏览 0 评论

go-admin 是一个go语言开发的企业级快速开发平台,使用了Gin,casbin,gorm,Vue,Element UI,并且也内置了一些模块,如:用户管理、部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理等。


特性

遵循 RESTful API 设计规范

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

基于Casbin的 RBAC 访问控制模型

JWT 认证

支持 Swagger 文档(基于swaggo)

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

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

代码生成工具

表单构建工具

TODO: 单元测试

内置

用户管理:用户是系统操作者,该功能主要完成系统用户配置。

部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。

岗位管理:配置系统用户所属担任职务。

菜单管理:配置系统菜单,操作权限,按钮权限标识等。

角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。

字典管理:对系统中经常使用的一些较为固定的数据进行维护。

参数管理:对系统动态配置常用参数。

操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。

登录日志:系统登录日志记录查询包含登录异常。

系统接口:根据业务代码自动生成相关的api接口文档。

代码生成:根据数据表结构生成对应的增删改查相对应业务,全部可视化编程。

表单构建:自定义页面样式,拖拉拽实现页面布局。

服务监控:查看一些服务器的基本信息。

快速开始

服务

设置工作路径

mkdir goadmin

cd ./goadmin

mkdir src

cd ./src

为什么要设置src目录


因为 GO 的包搜索是从 GOPATH 和 GOROOT 路径下搜索,源码必须要放在 GOROOT 或 GOPATH 的 src 目录下才能找到。但把源码和包放在一起,对于很多人来说确实不太很习惯,有一种做法,通过在 GOPATH 中设置两个路径,go get 下载的包默认放在 GOPATH 设置的第一个路径下。比如,GOPATH 设置如下:


export GOPATH=/Users/zhangwenjian/go/:/Users/zhangwenjian/Work/go

如此就可以把工作区设在 /Users/zhangwenjian/Work/go/src,而安装包放在 /Users/zhangwenjian/go/src。


下载源码

git clone https://github.com/wenjianzhang/go-admin.git

编译

cd ./go-admin

go build

设置数据库

首先找到配置文件,config/settings.yml, 同时也可创建开发环境配置,只需将默认配置文件 config/settings.yml 复制到 config/settings.dev.yml 就好了

2.png

settings:  application:  
    # 项目启动环境                mode: dev  # dev开发环境 test测试环境 prod线上环境;    host: 0.0.0.0  # 主机ip 或者域名,默认0.0.0.0    # 服务名称    name: go-admin   
    # 服务端口    port: 8000   
    readtimeout: 1   
    writertimeout: 2 
  log:    # 日志文件存放路径    dir: temp/logs  jwt:    # JWT加密字符串    secret: go-admin    # 过期时间单位:秒    timeout: 3600  database:    # 数据库名称    name: dbname 
    # 数据库类型    dbtype: mysql    
    # 数据库地址    host: 127.0.0.1  
    # 数据库密码    password: password  
    # 数据库端口    port: 3306       
    # 数据库用户名    username: root   

首先,需要修改数据库信息:

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名

数据库结构初始化

项目中支持使用命令方式初始化基本数据结构和基础数据。可以方便的使用 init命令进行项目数据库结构和数据初始化。如下操作:

./go-admin init -c=config/settings.dev.yml

:::tip 可以通过 -c 参数实现本地多环境配置文件隔离 例如 开发环境命名为:settings.dev.yml :::

启动

初始化完成之后,我们就可以启动项目了,在这里需要注意一点,正常大家启动项目的方式是这样的 ./go-admin , 哦哦 系统报错了,我们尝试一下 ./go-admin

./go-admin

下图是输出内容:

Go 项目推荐之 go-admin


输出内容告诉我们:Error: requires at least one arg ,至少有一个参数;

你也可以使用./go-admin -h 来查看帮助;

上面讲完之后,我们就可以使用自己的启动语句来启动项目了,

./go-admin server -c=config/settings.dev.yml

如果看到一下数据内容,请检查一下数据库配置;

2020/04/06 23:38:52 root:password@tcp(127.0.0.1:3306)/dbname2020/04/06 23:38:52 mysql connect error %v dial tcp 127.0.0.1:3306: connect: connection refused

输出内容为下图,恭喜你!你已经成功了!

输出内容告诉我们:Error: requires at least one arg ,至少有一个参数;

你也可以使用./go-admin -h 来查看帮助;

上面讲完之后,我们就可以使用自己的启动语句来启动项目了,

./go-admin server -c=config/settings.dev.yml

如果看到一下数据内容,请检查一下数据库配置;

2020/04/06 23:38:52 root:password@tcp(127.0.0.1:3306)/dbname2020/04/06 23:38:52 mysql connect error %v dial tcp 127.0.0.1:3306: connect: connection refused

输出内容为下图,恭喜你!你已经成功了!

Go 项目推荐之 go-admin


go,下一步启动前端项目!

视图

设置视图工作路径

返回上上级目录

cd ../../

下载视图源码

这里我们直接git clone下来。

git clone https://github.com/wenjianzhang/go-admin-ui.git

输出内容:

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名
0

恭喜!到目前为止说明go-admin-ui代码已经下载完成。

npm install

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名
1

这里还原包是需要一些时间的请耐心等待一下...

看到下边的输入说明已经安装好了

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名
2

启动

启动项目,使用npm run dev命令就好了。

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名
3

输出内容:

database: 节点下是数据库配置类信息database.database: 数据库名称database.dbtype: 数据库类型。目前支持:mysqldatabase.host: 数据库地址,填写网络ip地址或者域名。mysql类型,如:127.0.0.1;database.password: 数据库密码database.port: 数据库端口号database.username: 数据库用户名
4

此时项目已经启动了,但是有一点请注意:检查api是否也启动了。否则页面会提示错误的哦。

搞定

搞定,现在你可以go-admin 之旅!


相关推荐

百度快速收录排名新方法,百度快速收录功能取代熊掌号ID

近期,度搜索资源平台,在资源提交版块,上线普通收录与快速收录,同时,针对早期移动专区的熊掌ID数据提交,给出合理的建议。理论上是建议大家在合理的时间内,将熊掌ID的权益继承到快速收录这个版块。实际上,...

利于网页收录和排名,百度站长恢复网站自动推送功能

在今年的三月份的时候,百度线下了自动推送功能,然后最近百度自动推送功能又可以使用了,可能是在市场实践中,觉得对于站长这个功能还是有必要的。百度站长平台发通知告知全面恢复“普通收录-自动推送”功能,运营...

SEO优化怎么做,如何提高效果,怎么找客户?

在做SEO的过程中,我们总是会沉浸在“盲目进行时”很长一段时间里,总是停不下来脚本去思考,我们近期的SEO优化工作,是否是徒劳,而仍然日复一日的坚持!因此,我们认为SEO人员在特定周期内,开启网站优化...

如何快速收录网站及文章?SEO入门课程_小小课堂

网站发布的每一篇文章都可以被搜索引擎秒收录,相信这是每一个SEO人员的追求。今天,小小课堂网来为大家介绍的是如何让百度快速收录网站及文章。希望对大家有所帮助。如何快速收录网站及文章?SEO入门课程_小...

5个可以帮你免费获取资源的网站,想要这都有,一定大饱眼福!

日常百度搜索想要的资源,经常的会出现乱七八糟的材料资讯,真正想要的没有一个!或者有的时候索性就是根本找不到!真的是心塞塞!难道就真的找不到吗?还是说你想要的资源太过冷门,其实并不是,悄悄的告诉你或者你...

百度快速收录方法,常见的软件、网站平台、工具有哪些?

从目前来看对于每个企业而言,当我们在遇到市场冷清的情况下,总是会试图找寻各种途径,为企业站点获得更多的流量支撑,这是毋庸置疑的。但我们都知道,如果你试图增加搜索流量,有一个前提非常重要,那就是获得较高...

这些网址收录平台免费收录网站,快去提交网站吧

目前站长推广网站的手段中,目录站是最常见也最有效的网站关键词优化工具。只要在将网站关键词和网址收录到目录站,就会获得一个反向的关键词锚文本链接,可实时向百度推送数据,从而优化您网站关键词的百度排名,快...

互联网大变天,巨头们到底做错了什么?

2020年11月发生的一系列标志性的事件,注定会被载入史册——密集而频繁的监管动作,平地惊雷,炸响了中国整个互联网。先是上交所发布公布暂缓蚂蚁科技上市,随后《网络小额贷款业务管理暂行办法(征求意见稿)...

2020中国互联网哈哈榜之3:十大人物

2020年,于整个互联网科技圈来说,是充满挑战和挫折的一年,企业家们有的名声大打折扣,有的背上了巨额债务,有的抓住机遇迎难而上,有的在绝境中依然翻了身。接下来我就给大家盘点一下,魔幻的2020年中国互...

互联网巨头不搞科研搞垄断,我们都生活在腾讯和阿里的阴影之下

社交的时候不是腾讯的微信,就是阿里的钉钉。扫码支付的时候,不是阿里的支付宝,就是腾讯的微信支付。看电影的时候不是阿里影业出品就是腾讯影业,看个综艺节目不是阿里娱乐资助,就是腾讯资助的。互联网巨头不搞科...

公安部:2020年破获电信网络诈骗案25.6万起;美国三州出现变异新冠病毒感染病例,新确诊患者无旅行史

1丨熊猫债新规进一步推动债市开放中国银行间市场交易商协会近日发布两项指引,将进一步促进熊猫债业务规范化发展,提升银行间市场开放水平,树立中国债券市场的良好形象。交易商协会方面表示,我国债券市场开放实践...

谷歌“跨年夜”Doodle带大家一起倒计时

据外媒报道,2020年马上结束,以传统的新年前夜风格,Google又制作了一个doodle来纪念这一年的最后一点时间并迎接新一年的到来。今年doodle的中心是一个时钟,它正在为人们倒计时。谷歌“跨年...

讲一讲我这10年的站长经历

我记得我是从09年开始进入站长行业的,最早开始是对图片站比较感兴趣,就一直想做一个妹子图片站,在网上自己搜教程,各种学,没搞成。最后认识了一个做论坛的小伙伴,花了500块让他用discuz搭建了一个论...

百度搜索引擎蜘蛛详解

百度蜘蛛是不是越多越好呢?其实也不见得,得看是什么样的蜘蛛到达了我们的网站。今天,SEO百科网带来的是《百度蜘蛛是什么?百度搜索引擎蜘蛛详解-什么是搜索引擎》。希望对大家有所帮助。百度搜索引擎蜘蛛详解...

知乎十年终于要上市?知识赛道难觅“第一股”,域名也成问题

近日,知乎传出了要上市的消息,上市地点可能在港股或美股,尚待确认。对此,知乎方面暂无回应。知乎十年终于要上市?知识赛道难觅“第一股”,域名也成问题知乎是一个网络问答社区,其成立时间也已有十年。因此对于...

取消回复欢迎 发表评论: