# HardAdmin **Repository Path**: MisterTiger/HardAdmin ## Basic Information - **Project Name**: HardAdmin - **Description**: 基于thinkphp6+vue3+ element plus 框架, 可用于企业开发的前后端分离解决方案(PHP7.4可以正常运行,PHP7.3以下和PHP8.0以上无法正常运行) - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 18 - **Created**: 2024-03-16 - **Last Updated**: 2024-06-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 介绍 ## 项目介绍   🔥🔥🔥 项目基于[thinkphp6](https://www.thinkphp.cn/), [vue3.x](https://v3.cn.vuejs.org/) 、[Element plus](https://element-plus.gitee.io/zh-CN/#/zh-CN) 等框架,可用于企业开发的前后端分离解决方案。此项目可免费用于学习研究,免费用于商业使用。   项目作者目前从事软件定制开发工作,是一个技术热爱者,把在企业项目开发过程中积累的经验,整理成开箱即用的框架,分享给热爱技术同胞们,大家一起交流分享,希望能把框架做的越来月越完善。   欢迎大家提出建议,一起完善HardAdmin;以及后面开发基于python和go开发语言的WEB前后端分离框架。 ## 项目预览 - [HardAdmin在线预览 ](http://test.hardphp.com/backend/#/login) http://test.hardphp.com/backend/#/login - 账号:admin - 密码:123456 ## 使用文档 http://test.hardphp.com/HardAdmin/ 后端接口部署 注意建议直接使用vendor包,本项目使用注解路由,修复think-annotation 中文件代码,参考步骤4修改方法 1. 创建网站 使用宝塔面板或者phpstusy 创建面板,配置域名,例如 http://test.hardphp.com 2. 导入数据库 hardadmin.sql 可以借助navicat for mysql 工具导入数据库文件 3. 修改.env环境变量 [DATABASE] TYPE = mysql HOSTNAME = 127.0.0.1 DATABASE = 数据库 USERNAME = 用户名 PASSWORD = 密码 HOSTPORT = 3306 CHARSET = utf8 PREFIX =tp_ DEBUG = true 4. 修复think-annotation 文件 \vendor\topthink\think-annotation\src\InteractsWithRoute.php 第103行注释掉 //注册路由 $rule = $routeGroup->addRule($route->value, "{$class}@{$refMethod->getName()}", $route->method); #注释掉该行代码 //$rule->option($route->getOptions()); //中间件 if ($middleware = $this->reader->getMethodAnnotation($refMethod, Middleware::class)) { $rule->middleware($middleware->value); } 5. 接口访问 接口地址 = 域名+模块+控制器+方法 示例 管理员登录接口:http://test.hardphp.com/admin/login/index 用户登录接口:http://test.hardphp.com/api/login/index 前端部署 1. 下载代码 # 克隆项目 git clone https://gitee.com/hardphp/HardAdmin.git 2. 修改.env/.env.production环境变量 #进入项目目录 cd admin # 环境接口根地址,和上面后端接口部署时候的地址保持一直 VITE_API_URL = 'http://test.hardphp.com' 3. 项目运行 # 1.进入项目 cd admin # 2.安装依赖 npm install # 3.运行项目 npm run dev 4. 项目发布 # 1.进入项目 cd admin # 2.打包发布 npm run build # 3.将dist 放入后端代码public目录下,并重命名为backend,访问地址 http://test.hardphp.com/backend ## 框架分层 - 1、从下往上主要分为三层:模型层model、逻辑服务层service、控制器层controller - 2、上层可调用下层,不可下层反向调用上层,逻辑服务层可以平层调用 - 3、分层初衷是封装复用,争取重复代码不写第二遍,此类规范并无绝对标准,重在统一规范 ## CRUD代码生成 - 自动生成接口端(model、service、controller、validate )各层代码,以及前端api、列表、表单代码 ## 项目预览 ![./php/public/static/1.png](/php/public/static/1.png) ![./php/public/static/2.png](./php/public/static/2.png) ![./php/public/static/3.png](./php/public/static/3.png) ![./php/public/static/4.png](./php/public/static/4.png) ![./php/public/static/5.png](./php/public/static/5.png) ![./php/public/static/6.png](./php/public/static/6.png)