Inglés | Chino simplificado
Documentación en línea: https://www.gin-vue-admin.com
inicialización
Vídeo instructivo del entorno al despliegue
Enseñanza del desarrollo (Colaborador: LLemonGreen y Fann)
comunidad de comunicacion
mercado de complementos
1. Este proyecto cuenta con documentación y tutoriales en vídeo detallados desde el inicio hasta el desarrollo y la implementación.
2. Este proyecto requiere que tengas cierta base en golang y vue.
3. Puede completar todas las operaciones a través de nuestros tutoriales y documentos, por lo que ya no brindamos servicios técnicos gratuitos. Si necesita servicios, brinde soporte pago.
4. Si utiliza este proyecto con fines comerciales, cumpla con el acuerdo Apache2.0 y conserve la declaración de soporte técnico del autor. Debe conservar la siguiente información de la declaración de derechos de autor, así como la información de la declaración de derechos de autor contenida en los registros y el código. La información retenida requerida es de naturaleza de redacción publicitaria y no afectará ningún contenido comercial. Si decide utilizarla comercialmente [las actividades comerciales que generan ingresos son todos usos comerciales] o debe eliminarse, compre una autorización.
Gin-vue-admin es una plataforma de desarrollo de pila completa basada en vue y gin que separa el front-end y el back-end. Integra autenticación jwt, enrutamiento dinámico, menú dinámico, autenticación casbin, generador de formularios, generador de código y otras funciones, y proporciona. Muchas funciones de archivos de muestra, lo que le permite dedicar más tiempo al desarrollo empresarial.
Vista previa en línea: http://demo.gin-vue-admin.com
Nombre de usuario de prueba: administrador
Contraseña de prueba: 123456
Hola, antes que nada, gracias por usar gin-vue-admin.
Gin-vue-admin es un conjunto de marcos de código abierto con una arquitectura de separación de front-end y back-end preparado para una investigación y desarrollo rápidos. Está diseñado para construir rápidamente proyectos pequeños y medianos.
El crecimiento de Gin-vue-admin no puede separarse del apoyo de todos. Si está dispuesto a contribuir con código o brindar sugerencias para gin-vue-admin, lea el siguiente contenido.
Los problemas solo se utilizan para enviar errores o características y el contenido relacionado con el diseño se puede cerrar directamente.
Antes de enviar un problema, busque para ver si se ha planteado el contenido relevante.
Primero envíe una copia a su propio proyecto. No cree una sucursal directamente debajo del almacén.
La información de confirmación debe completarse en el formato [文件名]: 描述信息
, como README.md: fix xxx bug
.
Si está solucionando un error, proporcione información de descripción en el PR.
La fusión del código requiere la participación de dos mantenedores: una persona revisa y aprueba, y la otra revisa nuevamente, y se puede fusionar después de pasar la revisión.
- node版本 > v16.8.3 - golang版本 >= v1.22 - IDE推荐:Goland
Utilice herramientas de edición como Goland
para abrir el directorio del servidor. No abra el directorio raíz de gin-vue-admin.
# Clona el proyecto git clone https://github.com/flipped-aurora/gin-vue-admin.git# Ingresa a la carpeta del servidor cd server# Usa go mod e instala el paquete de dependencia go go generate# Ejecuta go run.
# Ingresar a la carpeta web cd web # Instalar dependencias npm install # Iniciar el proyecto web npm run server
vaya a instalar github.com/swaggo/swag/cmd/swag@latest
servidor de CD inicio de botín
Después de ejecutar el comando anterior, los tres archivos
docs.go
,swagger.json
yswagger.yaml
en la carpeta docs aparecerán en el directorio del servidor. Después de iniciar el servicio go, ingrese http://localhost:8888/swagger en el archivo. navegador. /index.html para ver la documentación de swagger.
Utilice VSCode
para abrir el archivo del espacio de trabajo gin-vue-admin.code-workspace
en el directorio raíz. Puede ver tres directorios virtuales en la barra lateral: backend
, frontend
, root
.
También puede ver tres tareas en ejecución y depuración: Backend
, Frontend
, Both (Backend & Frontend)
. Ejecutar Both (Backend & Frontend)
puede iniciar los proyectos front-end y front-end al mismo tiempo.
Existe el campo go.toolsEnvVars
en el archivo de configuración del espacio de trabajo, que es la variable de entorno de la herramienta go utilizada para el propio VSCode
. Además, en sistemas con múltiples versiones de go, puede especificar la versión en ejecución mediante gopath
y go.goroot
.
"go.gopath": nulo, "go.goroot": nulo,
Front-end: utilice elementos basados en Vue para crear páginas básicas.
Backend: utilice Gin para crear rápidamente una API básica de estilo relajante. Gin es un marco web escrito en lenguaje go.
Base de datos: use MySql
> (5.7) versión del motor de base de datos InnoDB y use gorm para implementar operaciones básicas en la base de datos.
Almacenamiento en caché: utilice Redis
para registrar el token jwt
del usuario activo actual e implementar restricciones de inicio de sesión multipunto.
Documentación API: utilice Swagger
para crear documentación de automatización.
Archivo de configuración: utilice fsnotify y viper para implementar el archivo de configuración en formato yaml
.
Registro: utilice zap para implementar el registro.
├── server ├── api (api层) │ └── v1 (v1版本接口) ├── config (配置包) ├── core (核心文件) ├── docs (swagger文档目录) ├── global (全局对象) ├── initialize (初始化) │ └── internal (初始化内部函数) ├── middleware (中间件层) ├── model (模型层) │ ├── request (入参结构体) │ └── response (出参结构体) ├── packfile (静态文件打包) ├── resource (静态资源文件夹) │ ├── excel (excel导入导出默认路径) │ ├── page (表单生成器) │ └── template (模板) ├── router (路由层) ├── service (service层) ├── source (source层) └── utils (工具包) ├── timer (定时器接口封装) └── upload (oss接口封装) web ├── babel.config.js ├── Dockerfile ├── favicon.ico ├── index.html -- 主页面 ├── limit.js -- 助手代码 ├── package.json -- 包管理器代码 ├── src -- 源代码 │ ├── api -- api 组 │ ├── App.vue -- 主页面 │ ├── assets -- 静态资源 │ ├── components -- 全局组件 │ ├── core -- gva 组件包 │ │ ├── config.js -- gva网站配置文件 │ │ ├── gin-vue-admin.js -- 注册欢迎文件 │ │ └── global.js -- 统一导入文件 │ ├── directive -- v-auth 注册文件 │ ├── main.js -- 主文件 │ ├── permission.js -- 路由中间件 │ ├── pinia -- pinia 状态管理器,取代vuex │ │ ├── index.js -- 入口文件 │ │ └── modules -- modules │ │ ├── dictionary.js │ │ ├── router.js │ │ └── user.js │ ├── router -- 路由声明文件 │ │ └── index.js │ ├── style -- 全局样式 │ │ ├── base.scss │ │ ├── basics.scss │ │ ├── element_visiable.scss -- 此处可以全局覆盖 element-plus 样式 │ │ ├── iconfont.css -- 顶部几个icon的样式文件 │ │ ├── main.scss │ │ ├── mobile.scss │ │ └── newLogin.scss │ ├── utils -- 方法包库 │ │ ├── asyncRouter.js -- 动态路由相关 │ │ ├── btnAuth.js -- 动态权限按钮相关 │ │ ├── bus.js -- 全局mitt声明文件 │ │ ├── date.js -- 日期相关 │ │ ├── dictionary.js -- 获取字典方法 │ │ ├── downloadImg.js -- 下载图片方法 │ │ ├── format.js -- 格式整理相关 │ │ ├── image.js -- 图片相关方法 │ │ ├── page.js -- 设置页面标题 │ │ ├── request.js -- 请求 │ │ └── stringFun.js -- 字符串文件 | ├── view -- 主要view代码 | | ├── about -- 关于我们 | | ├── dashboard -- 面板 | | ├── error -- 错误 | | ├── example --上传案例 | | ├── iconList -- icon列表 | | ├── init -- 初始化数据 | | | ├── index -- 新版本 | | | ├── init -- 旧版本 | | ├── layout -- layout约束页面 | | | ├── aside | | | ├── bottomInfo -- bottomInfo | | | ├── screenfull -- 全屏设置 | | | ├── setting -- 系统设置 | | | └── index.vue -- base 约束 | | ├── login --登录 | | ├── person --个人中心 | | ├── superAdmin -- 超级管理员操作 | | ├── system -- 系统检测页面 | | ├── systemTools -- 系统配置相关页面 | | └── routerHolder.vue -- page 入口页面 ├── vite.config.js -- vite 配置文件 └── yarn.lock
Gestión de permisos: Gestión de permisos basada en jwt
y casbin
.
Carga y descarga de archivos: implemente operaciones de carga de archivos basadas en七牛云
,阿里云
y腾讯云
(desarrolle su propia aplicación para el token
correspondiente o key
correspondiente en cada plataforma).
Encapsulación de paginación: la interfaz usa mixins
para encapsular la paginación, y el método de paginación simplemente llama mixins
.
Gestión de usuarios: el administrador del sistema asigna roles de usuario y permisos de roles.
Gestión de roles: cree el objeto principal para el control de permisos y asigne diferentes permisos de API y permisos de menú a los roles.
Gestión de menús: realice la configuración del menú dinámico del usuario y realice diferentes menús para diferentes roles.
Gestión de API: diferentes usuarios tienen diferentes permisos en las interfaces API a las que pueden llamar.
Gestión de configuración: los archivos de configuración se pueden modificar en la recepción (esta función no está disponible en el sitio de la experiencia en línea).
Búsqueda condicional: agregue ejemplos de búsqueda condicional.
Ejemplo tranquilo: puede consultar la API de muestra en el módulo de administración de usuarios.
Referencia del archivo front-end: web/src/view/superAdmin/api/api.vue
Referencia del archivo de fondo: server/router/sys_api.go
Restricciones de inicio de sesión multipunto: debe cambiar use-multipoint
en system
a verdadero en config.yaml
(debe configurar Redis y los parámetros de Redis en Config usted mismo. Durante la fase de prueba, informe cualquier error a tiempo).
Carga multiparte: proporciona ejemplos de carga de archivos multiparte y carga multiparte de archivos grandes.
Creador de formularios: Creador de formularios con la ayuda de @Variant Form.
Generador de código: lógica básica de fondo y generador de código cuajado simple.
https://www.yuque.com/flipped-aurora
Se incluyen vídeos didácticos sobre el framework front-end. Si cree que el proyecto le resulta útil, puede agregar mi WeChat personal: shouzi_1994. Puede realizar solicitudes valiosas.
(1) Vídeo de instrucciones paso a paso
https://www.bilibili.com/video/BV1Rg411u7xH/
(2) Introducción al ajuste de la estructura del directorio back-end y cómo usarlo
https://www.bilibili.com/video/BV1x44y117TT/
(3) video de enseñanza básica de golang
bilibili: https://space.bilibili.com/322210472/channel/detail?cid=108884
(4) Enseñanza básica del marco de ginebra.
bilibili: https://space.bilibili.com/322210472/channel/detail?cid=126418&ctype=0
(5) video de introducción a la actualización de la versión gin-vue-admin
bilibili: https://www.bilibili.com/video/BV1kv4y1g7nT