项目作者: moell-peng

项目描述 :
Mojito Admin 基于 Laravel, Vue, Element 构建的后台管理系统
高级语言: PHP
项目地址: git://github.com/moell-peng/mojito.git
创建时间: 2018-10-04T15:49:06Z
项目社区:https://github.com/moell-peng/mojito

开源协议:Apache License 2.0

下载


Mojito

Mojito 是基于 Laravel 开发的 Mojito Admin 的服务端。

3.0 版本开始, 已将原来的项目分离为两个代码库,分别为以Vue3、Element Plus、Vite 开发的前端模板 mojito -admin 和服务端 mojito 。如果是需要使用 vue2 版本,请访问 2.0 分支。

Mojito Admin 截图

mojito.png

特性

  • 前后端分离,提供 Mojito Admin 前端模板
  • 基于 laravel-permission 权限管理
  • 基于 sanctum 鉴权
  • 提供角色,权限,用户,菜单管理等功能的API
  • 多个后台支持统一管理权限,菜单和角色
  • 完善的PHPUnit测试

要求

  • Laravel >= 7.0.0
  • PHP >= 7.2.0

安装

首先安装laravel,并且确保你配置了正确的数据库连接。

  1. composer require moell/mojito

然后运行下面的命令来发布资源:

  1. php artisan mojito:install

命令执行成功会生成配置文件,数据迁移和构建SPA的文件。

修改 app/Http/Kernel.php

  1. class Kernel extends HttpKernel
  2. {
  3. protected $routeMiddleware = [
  4. ...
  5. 'mojito.permission' => \Moell\Mojito\Http\Middleware\Authenticate::class,
  6. ];
  7. protected $middlewareGroups = [
  8. ...
  9. 'api' => [
  10. ...
  11. \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
  12. ],
  13. ];
  14. }

执行数据迁移,数据填充

  1. php artisan migrate
  2. php artisan db:seed --class="Moell\Mojito\Database\MojitoTableSeeder"

后台登录的账号 admin , 密码 secret

路由中间件

  • auth:sanctum 用于鉴权
  • mojito.permission 权限验证

mojito.php 可选配置

  1. return [
  2. 'guards' => [
  3. // laravel-permission 相对应的 guard
  4. 'admin' => [
  5. 'model' => \Moell\Mojito\Models\AdminUser::class, //登录鉴权的模型
  6. 'login_fields' => [ // 登录验证的字段,支持多个
  7. 'username',
  8. ],
  9. 'conditions' => [ // 登录验证的额外条件
  10. ['status', '=', 1]
  11. ]
  12. ]
  13. ],
  14. 'route_prefix' => "api", //路由前缀
  15. 'middleware' => [
  16. 'basic' => 'api', //基础中间件
  17. 'auth' => ['auth:sanctum'], //鉴权中间件
  18. 'permission' => ['auth:sanctum', 'mojito.permission'] //包含权限检测的中间件
  19. ]
  20. ];

依赖扩展包

  • 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