go-admingo-admin
  • 指南
  • 开发
    • 进阶
    • 指令
  • 前端
  • 高阶
  • 授权
  • 帮助
  • GitHub
  • Changelog
⌘ K
介绍
快速开始
Go 环境
Go Modules
环境变量
Node 环境
IDE 配置
规范约束
部署环境
常见问题
最后更新时间:
Open-source MIT Licensed | Copyright © 2020-present
Powered by go-admin-team

TABLE OF CONTENTS

‌
‌
‌
‌

代码规范

本文是 go-admin 的目录结构与命名约定。仓库根目录的 AGENTS.md 是同一套约定面向 AI 编码工具的版本,两者内容一致;实际编码时以可编译的 app/demo/ 为准,见标准模块开发。

目录及文件名

app

app 此目录是存放不同的应用或者较大的应用模块;例如:go-admin内置了用户权限管理模块,因此,在 app 下有一个 admin 的文件夹;

admin

admin是指go-admin内置的用户权限管理模块;

apis

apis 目录下直接存放 api 文件,命名格式如下:

格式:apis/{name}.go

models

models 目录下直接存放数据库 orm 模型文件,命名格式如下:

格式:models/{name}.go

router

router 目录下直接存放路由文件,命名格式如下:

格式:router/{name}.go

service

service 目录下直接存放业务处理文件,命名格式如下:

格式:service/{name}.go

service/dto

service/dto 目录下存放 api 请求接收或者输出的模型文件,命名格式如下:

格式:service/dto/{name}.go

name 示例

go
article_list.go
# 文件名:内容为示例,并非有实际意义,只需参照格式

Code 规范

引用部分分类

分类列表

  1. 内置函数;
  2. 外部函数;
  3. 项目引用;

格式:每块内容需有明显的分割,这里我们使用空行进行分割;

示例:

go
import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/go-admin-team/go-admin-core/v2/sdk/api"
"go-admin/app/admin/models"
"go-admin/app/admin/service"
)

函数名

格式:{操作类型}{函数名备注}:

  1. 分为前后两段:
  1. 第一段方法名称;Get
  2. 第二段备注说明;ArticleList

示例:

go
// GetArticleList 获取文章列表
func GetArticleList(c *gin.Context) {
...
}

Router

api

格式:api/{version}/{module}/{name}

示例:api/v1/system/sys-user

view

格式:{module}/{name}

示例:system/sys-user

go 内置函数

init

请勿自行使用系统内置init函数,如果执行顺序控制不当,可能会出现问题;

系统配置

菜单管理

业务名称:list 、 add 、 remove 、 edit 、 query 、

权限标识

请使用小驼峰

格式:{module}/{name}/业务名称

示例:admin/sysUser/list

WARNING

从哪里获得帮助:

如果你在阅读本教程的过程中有任何疑问,可以前往提交建议。