go-admingo-admin
  • 指南
  • 开发
    • 进阶
    • 指令
  • 前端
  • 高阶
  • 授权
  • 帮助
  • GitHub
  • Changelog
⌘ K
标准写法
标准模块开发
服务端基础
后端目录结构
后端配置文件
启动后端服务
前端基础
前端目录结构
前端配置文件
启动前端服务
开发模式
Actions 模式
常规模式
第一个接口
分层开发
API 层
Service 层
DTO 定义
Model 定义
路由注册
多环境配置
数据库表规范
数据权限
统一响应
代码生成
生成前配置
生成业务代码
一键生成菜单
菜单绑定接口
配置角色权限
验证功能
用 AI 生成代码
进阶能力
Runtime 核心 API
认证与鉴权
日志
请求追踪
缓存
队列
文件上传
限流
定时任务
Air 热加载
Swagger 文档
代码生成工具
最后更新时间:
Open-source MIT Licensed | Copyright © 2020-present
Powered by go-admin-team

TABLE OF CONTENTS

‌
‌
‌
‌

actions 模式

INFO

go-admin 有两种开发模式,按业务复杂度选择:

  1. Actions 模式(本页) —— 单表增删改查优先使用。common/actions 提供的五个通用 Action 已覆盖参数绑定、数据权限过滤、操作人注入、分页与错误响应,一个模块只需 model、dto、router 三个文件,无需编写 apis 与 service。
  2. 常规模式 —— 当业务超出单表 CRUD(跨表事务、外部调用、复杂校验)时, 自行编写 Handler 与 Service。

可编译的完整示例见仓库的 app/demo/ 目录,与本文冲突时以该目录为准。

开发工具生成代码并配置角色授权操作

开发工具生成代码

  1. 首先需要插入一个结构化的对象定义 sql
sql
CREATE TABLE `article` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '编码',
`title` varchar(128) DEFAULT NULL COMMENT '标题',
`author` varchar(128) DEFAULT NULL COMMENT '作者',
`content` varchar(255) DEFAULT NULL COMMENT '内容',
`status` int(1) DEFAULT NULL COMMENT '状态',
`publish_at` timestamp NULL DEFAULT NULL COMMENT '发布时间',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
`deleted_at` timestamp NULL DEFAULT NULL,
`create_by` int(11) unsigned DEFAULT NULL,
`update_by` int(11) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_article_deleted_at` (`deleted_at`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='文章';
  1. 在字段信息中选择需要进行的动作,比如需要查询操作,则勾选上复选框
  2. 勾选好后提交,点击代码生成会生成相应的 go 代码和 vue 代码,同时想要看见菜单还需要点击生成配置

WARNING

说明 此处点击生成配置只需要点击一次,否则多次点击会生成多个重复菜单

4.生成代码后需要重新编译前后端运行

shell
go build .
npm run dev

5.编译运行便可以看见相应的菜单,但是此时还不能配置角色拥有次菜单的权限,还需要生成相应的 API 接口定义写入数据

shell
./go-admin server -c config/settings.yml -a

-a 的意思是指定 check api 接口,对于不存在的 api 接口会插入到数据库

  1. 此时 api 接口已经插入数据库,然后我们需要给 api 菜单配置授权 点击接口管理->找到相应的 api 接口配置标题,类型选择 BUS 表示业务类型,SYS 表示系统类型
  2. 定义好接口描述后,需要在菜单管理->找到相应的菜单->点击修改->修改授权 配置列表菜单授权查询接口,修改菜单首选修改接口,删除按钮菜单授权删除接口权限

8.此时便可以去到角色菜单,创建角色并分配新建页面的权限 9.创建用户并分配到相应的角色,即可完成对用户授权生成代码的菜单,和页面相应的角色控制