# imi-admin
**Repository Path**: xiaohe4966/imi-admin
## Basic Information
- **Project Name**: imi-admin
- **Description**: 高并发接口+vue后台
- **Primary Language**: PHP
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2023-04-19
- **Last Updated**: 2023-09-20
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 高并发后台管理员框架
**专注于高效快速开发的后台管理框架**
[](https://secure.php.net/)
[](https://github.com/swoole/swoole-src)
拍得到
**基于 后端 imi + 前端 SCUI 进行开发**
### 后台vue代码生成
### 安装说明
**后端开始安装**
~~~
composer create-project phpben/imi-admin
cd imi-admin
composer install
composer imi-admin-install
~~~
**前端开始安装**
~~~
cd imi-ui
npm i
#or
cnpm i
~~~
### ⚠️注意事项 Imi-Module-Route
在config/beans.php,这2个模块默认加的前缀,比如前段用户接口是域名+端口/api/user/login
~~~
// 模块路由
'ModuleRoute' => [
// 后端
'backend' => 'super',
// 接口
'api' => 'api',
],
~~~
配置imi-ui/pulic/config.js
.env.production
.env.development (跨域请开启代理)
# 是否开启代理
VUE_APP_PROXY = true
**启动**
~~~
#后端启动
vendor/bin/imi-swoole swoole/start
#前端启动
cd imi-ui && npm run serve
~~~
关闭某个占用端口
例如2800端口
~~~
netstat -anp | grep 2800
~~~
例如 tcp 0 0 0.0.0.0:2800 0.0.0.0:* LISTEN 1679466/node
关闭进程 (kill -9 1679466)
~~~
kill -9 进程PID
~~~
生成接口文档
~~~
vendor/bin/imi-swoole doc/api api.json
~~~
### 前段文档示例
列表页表格 多图展示 判断是否为null
~~~
~~~
### 列表页表格 状态自定义文字
~~~
{{status_option[scope.row.status]}}
在data return 里面加入
status_option:{"1":"待审核","2":"已通过","3":"已拒绝"},
~~~
### 列表页表格 状态自定义文字2
~~~
未知
申请中
已通过
已拒绝
~~~
### 列表页表格index id关联其他表3 (数组形式 直接取值)
~~~
1)
data return 里面定义store_id_option:[]
2)
mounted() {
this.getStore();//表格加载时会执行该方法
},
3)
methods: {
async getStore(){//需要加入的方法
var res = await this.$API.store.read.get();
var list = res.data.list;
var store_list_option = [];
for (let index = 0; index < list.length; index++) {
store_list_option[list[index].id] = list[index].name;
}
console.log(store_list_option);
this.store_id_option = store_list_option;
},
}
4)
{{store_id_option[scope.row.store_id]}}
~~~
### 编辑创建页 id关联其他表 (列表循环 直接取值)
~~~
1)
data return 里面定义store_id_option:[]
2)
mounted() {
this.getStore();//表格加载时会执行该方法
},
3)
methods: {
async getStore(){//需要加入的方法
var res = await this.$API.store.read.get();
this.store_id_option = res.data.list;
},
}
4)
~~~
```
# 跨域配置 这里是全部允许的跨域
add_header Access-Control-Allow-Origin 'http://localhost:8080';
add_header Access-Control-Allow-Methods '*';#GET,POST,PUT,DELETE,PATCH,OPTIONS
add_header Access-Control-Allow-Headers '*';
location /uploads/ {
alias '/www/wwwroot/pddadmin.he4966.cn/imi-admin/public/uploads/';
# autoindex on;
}
# 上传大小与缓冲大小
client_body_buffer_size 100m;
client_max_body_size 8000m;
# nginx代理
location / {
proxy_pass http://127.0.0.1:8082;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 100m;
}
```
### 特别鸣谢
PHP - 世界上最好的语言
Swoole - PHP 协程框架
imi - PHP长连接微服务分布式开发框架
ElementUi - 桌面端组件库
Scui - 企业级中后台前端
### LICENSE
Apache License 2.0