Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/moell-peng/mojito
Mojito Admin — 基于 Laravel, Vue3, Element Plus构建的后台管理系统
https://github.com/moell-peng/mojito
element-admin element-plus-admin laravel-admin laravel-emement-plus-admin vue-admin
Last synced: 4 days ago
JSON representation
Mojito Admin — 基于 Laravel, Vue3, Element Plus构建的后台管理系统
- Host: GitHub
- URL: https://github.com/moell-peng/mojito
- Owner: moell-peng
- License: apache-2.0
- Created: 2018-10-04T15:49:06.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-09-20T02:31:27.000Z (about 1 year ago)
- Last Synced: 2024-12-01T06:36:49.364Z (11 days ago)
- Topics: element-admin, element-plus-admin, laravel-admin, laravel-emement-plus-admin, vue-admin
- Language: PHP
- Homepage: https://moell-peng.github.io/mojito-doc/#/server
- Size: 147 KB
- Stars: 496
- Watchers: 8
- Forks: 96
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-admin - mojito - peng/mojito.svg?style=social&label=Star) 基于 Laravel, Vue3, Element Plus构建的后台管理系统 (PHP)
README
# Mojito
Mojito 是基于 Laravel 开发的 [Mojito Admin](https://github.com/moell-peng/mojito-admin) 的服务端。
3.0 版本开始, 已将原来的项目分离为两个代码库,分别为以Vue3、Element Plus、Vite 开发的前端模板 [mojito -admin](https://github.com/moell-peng/mojito-admin) 和服务端 [mojito](https://github.com/moell-peng/mojito) 。如果是需要使用 vue2 版本,请访问 [2.0](https://github.com/moell-peng/mojito/tree/2.0) 分支。
## Mojito Admin 截图
![mojito.png](http://ww1.sinaimg.cn/large/7a679ca1gy1gtu09c4avej21590kstdb.jpg)
## 特性
* 前后端分离,提供 [Mojito Admin](https://github.com/moell-peng/mojito-admin) 前端模板
* 基于 laravel-permission 权限管理
* 基于 sanctum 鉴权
* 提供角色,权限,用户,菜单管理等功能的API
* 多个后台支持统一管理权限,菜单和角色
* 完善的PHPUnit测试## 要求
- Laravel >= 7.0.0
- PHP >= 7.2.0## 安装
首先安装laravel,并且确保你配置了正确的数据库连接。
```
composer require moell/mojito
```然后运行下面的命令来发布资源:
```
php artisan mojito:install
```命令执行成功会生成配置文件,数据迁移和构建SPA的文件。
修改 `app/Http/Kernel.php` :
```
class Kernel extends HttpKernel
{
protected $routeMiddleware = [
...
'mojito.permission' => \Moell\Mojito\Http\Middleware\Authenticate::class,
];protected $middlewareGroups = [
...
'api' => [
...
\Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
],
];
}
```执行数据迁移,数据填充
```
php artisan migratephp artisan db:seed --class="Moell\Mojito\Database\MojitoTableSeeder"
```后台登录的账号 `admin` , 密码 `secret`
## 路由中间件
* auth:sanctum 用于鉴权
* mojito.permission 权限验证## mojito.php 可选配置
```php
return [
'guards' => [
// laravel-permission 相对应的 guard
'admin' => [
'model' => \Moell\Mojito\Models\AdminUser::class, //登录鉴权的模型
'login_fields' => [ // 登录验证的字段,支持多个
'username',
],
'conditions' => [ // 登录验证的额外条件
['status', '=', 1]
]
]
],
'route_prefix' => "api", //路由前缀
'middleware' => [
'basic' => 'api', //基础中间件'auth' => ['auth:sanctum'], //鉴权中间件
'permission' => ['auth:sanctum', 'mojito.permission'] //包含权限检测的中间件
]
];
```## 依赖扩展包
* spatie/laravel-permission
* laravel/sanctum## 常见错误
* csrf token missing or incorrect , 请修改 sanctum.php 中的 `stateful` , 如 vite 使用的 `localhost:3000 `去除即可。更多详细请访问`laravel/sanctum`文档。
## 打赏
## License
Apache License Version 2.0 see http://www.apache.org/licenses/LICENSE-2.0.html