博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
moell/mojito - 基于 Laravel、Vue、ELement 构建的基础后台系统扩展
阅读量:6952 次
发布时间:2019-06-27

本文共 2304 字,大约阅读时间需要 7 分钟。

Mojito

Mojito 是一个基于 Laravel, Vue, Element构建的后台管理系统。

截图

获取地址

欢迎使用和star

特征

  • 可快速衍生多个后台系统
  • 内置角色,权限,用户,菜单管理
  • OAuth 2.0,并支持多表鉴权
  • 完善的PHPUnit测试
  • API 权限精确至路由,页面权限精取到按钮或链接
  • 前后端分离
  • 多标签页
  • 前端支持多语言配置
  • 简洁的布局

Demo

url:

username:

password: mojito-demo

要求

  • Laravel >= 5.5.0
  • Vue >= 2.5.17
  • Element >= 2.4.6

兼容性

Laravel Mojito
5.5, 5.6 1.0.*
5.7 1.1.*

安装

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

composer require moell/mojito复制代码

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

php artisan mojito:install复制代码

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

config/auth.php中添加相应的 guards 和 providers,如下:

'guards' => [        ...        'admin' => [            'driver' => 'passport',            'provider' => 'admin'        ]    ],'providers' => [        ...        'admin' => [            'driver' => 'eloquent',            'model' => \Moell\Mojito\Models\AdminUser::class,        ]    ],复制代码

app/Http/Kernel.php 中 $routeMiddleware 属性添加路由中间 oauth.providersmojito.permission,并将auth中间件替换为如下:

class Kernel extends HttpKernel{    protected $routeMiddleware = [        // 'auth' => \Illuminate\Auth\Middleware\Authenticate::class,        'auth' => \SMartins\PassportMultiauth\Http\Middleware\MultiAuthenticate::class,        'oauth.providers' => \SMartins\PassportMultiauth\Http\Middleware\AddCustomProvider::class,        'mojito.permission' => \Moell\Mojito\Http\Middleware\Authenticate::class,    ];}复制代码

执行数据迁移,数据填充

php artisan migratephp artisan db:seed --class="Moell\Mojito\Database\MojitoTableSeeder"复制代码

Passport 安装和配置

php artisan passport:install复制代码

执行成功后获取到相应的密码授予客户端的 ID 和 secret 并且配置到相对应的 resources/config/index.js :

export default {  admin: {    authorize: {      clientId: ID,      clientSecret: secret    }}复制代码

安装 Javscript 依赖

npm installnpm install -D vuex@^3.0.1 vue-router@^3.0.1 vue-i18n@^8.1.0 localforage@^1.7.2 element-ui@^2.4.6复制代码

将 admin.js 添加到 webpack.mix.js

mix.js('resources/assets/js/app.js', 'public/js')    .sass('resources/assets/sass/app.scss', 'public/css')    //.js('resources/js/admin.js', 'public/js') laravel5.7+    .js('resources/assets/js/admin.js', 'public/js')复制代码

运行 Mix

#npm run watchnpm run production复制代码

登录

url:

email:

password: secret

依赖开源软件

  • Laravel
  • Vue
  • Element UI
  • laravel/passport
  • smartins/passport-multiauth
  • spatie/laravel-permission
  • orchestra/testbench

License

Apache License Version 2.0 see

转载于:https://juejin.im/post/5bbc2f90e51d450e6f2e85d5

你可能感兴趣的文章
转——jdbcType与javaType的对应关系
查看>>
Digital Image Processing 学习笔记2
查看>>
软件工程阅读作业2
查看>>
startup的过程和启动代码
查看>>
字典dic内部常用功能和使用方法-课堂笔记及课后总结
查看>>
include,require,include_once,require_once 的作用和区别
查看>>
android 学习随笔一(配置调试与基础)
查看>>
20160406javaweb 之JDBC简单案例
查看>>
Thinkphp 表单验证
查看>>
tango with django(第二章 准备工作)
查看>>
(四)mybatis之mybatis初了解
查看>>
POSTMAN list参数传值
查看>>
vue的双向数据绑定原理
查看>>
python中引号中有双引号
查看>>
PyQt5 qt desinger
查看>>
python
查看>>
scala学习心得(2)
查看>>
Android 实现类似微信客户端朋友圈更新提示的小红点&栏目订阅
查看>>
HeadFirst Jsp 09 (JSTL)
查看>>
四 Python基础
查看>>