共计 2748 个字符,预计需要花费 7 分钟才能阅读完成。
🔥零碎简介
ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场领有丰盛的性能利用,反对后盾一键疾速装置,让开发者能快的实现业务性能开发。
零碎齐全开源,基于 Apache 2.0 开源协定,收费且不限度商业应用。
💡性能一览
- 会员模块通用且残缺,反对残缺的 API 调用
- 大文件分片上传,进度条显示,已上传文件治理
- 弱小的模块扩大性能,所有模块能够无缝集成,反对在线装置、卸载模块
- 欠缺的开发助手,实现模块、主题的的一键创立
- 欠缺的后盾权限治理,反对基于 RBAC 的权限管理系统
- 后盾治理自应用手机、平板、PC,无论何时何地都可方便管理
- 第三方登录(QQ、微信、微博)
- 第三方领取反对(微信、支付宝),微信反对 PC 端扫码领取
- 第三方云存储反对,反对云贮存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云)
- 第三方短信反对(阿里云、腾讯云、华为云、百度云、253 云通信、聚合、七牛云、融云、赛邮、UCloud、云片、网易云)
技术栈
- Laravel
- jQuery
- Vue
- Element UI
- LayUI
💥 零碎个性
- 简洁优雅、灵便可扩大
- 后盾 RBAC 权限治理
- Ajax 页面无刷新
- 组件按需加载动态资源
- 内置丰盛的表格罕用性能
- 内置文件上传,无需繁琐的开发
- 模块市场,只需在治理页面点击鼠标即可实现模块的装置、更新和卸载等操作
🎨 零碎演示
- 源码地址 / Gitee
- 源码地址 / GitHub
前台演示地址
http://cms.demo.tecmz.com/
用户明码自行注册
后盾演示地址
http://cms.demo.tecmz.com/admin
账号:demo
明码:123456
(演示账号为只读权限)
🎁模块市场
丰盛的模块市场,后盾一键装置模块利用
🌐 开发文档
https://modstart.com/doc
零碎文档不断完善中
🔧 零碎装置
环境要求
PHP
>=5.6
MySQL
>=5.0
PHP Extension
:Fileinfo
Apache/Nginx
🔨 装置阐明
- 宝塔一键装置教程:https://modstart.com/doc/install/baota.html
- PHPStudy 一键装置教程:https://modstart.com/doc/install/phpstudy.html
- WampServer 装置教程:https://modstart.com/doc/install/wampserver.html
- Docker 一键装置教程:https://modstart.com/doc/install/docker.html
- 原生环境装置教程:https://modstart.com/doc/install/start.html
降级指南
参照 https://modstart.com/doc/install/upgrade.html
常见问题
咱们列举了常见问题,请查看官网规范指南
https://modstart.com/doc/install/qa.html
如有其余问题举荐应用官网探讨交换群或在线探讨
https://modstart.com/forum
🔨 开发速看
以下以一个简略的新闻增删改查页面为例,疾速理解 ModStart 开发的大抵流程。
数据表迁徙文件
class CreateNews extends Migration
{public function up()
{Schema::create('news', function (Blueprint $table) {$table->increments('id');
$table->timestamps();
$table->string('title', 200)->nullable()->comment('');
$table->string('cover', 200)->nullable()->comment('');
$table->string('summary', 200)->nullable()->comment('');
$table->text('content')->nullable()->comment('');
});
}
public function down()
{//}
}
控制器代码
class NewsController extends Controller
{
use HasAdminQuickCRUD;
protected function crud(AdminCRUDBuilder $builder)
{
$builder
->init('news')
->field(function ($builder) {$builder->id('id','ID');
$builder->text('title', '名称');
$builder->image('cover', '封面');
$builder->textarea('summary', '摘要');
$builder->richHtml('content', '内容');
$builder->display('created_at', '创立工夫');
$builder->display('updated_at', '更新工夫');
})
->gridFilter(function (GridFilter $filter) {$filter->eq('id', 'ID');
$filter->like('title', '题目');
})
->title('新闻治理');
}
}
减少路由和导航
在 routes.php
减少路由信息
$router->match(['get', 'post'], 'news', 'NewsController@index');
$router->match(['get', 'post'], 'news/add', 'NewsController@add');
$router->match(['get', 'post'], 'news/edit', 'NewsController@edit');
$router->match(['get', 'post'], 'news/delete', 'NewsController@delete');
$router->match(['get', 'post'], 'news/show', 'NewsController@show');
在 ModuleServiceProvider.php
中注册菜单信息
AdminMenu::register(function () {
return [
[
'title' => '新闻治理',
'icon' => 'list',
'sort' => 150,
'url' => '\App\Admin\Controller\NewsController@index',
]
];
});
这样一个简略的新闻增删改查页面就开发实现了。
正文完