ModStart

基于 Laravel 的模块化快速开发框架

License Apache2.0 GitHub last release GitHub last commit
Laravel Laravel Laravel Laravel

🔥 功能一览

已开源系统

功能完善,模块市场丰富,欢迎交流。 QQ群: 467107293系统介绍 - 图13 (opens new window)

💡 系统简介

ModStart 是一个基于 Laravel 的模块化快速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。

系统完全开源,基于 Apache 2.0 开源协议,免费且不限制商业使用

功能架构

技术栈

💥 系统特性

  • 全模块化开发,积木式搭建系统,可灵活组合
  • 简洁优雅、灵活可扩展,可实现大型复杂系统
  • 后台RBAC权限管理,多管理员多角色管理
  • 丰富的数据表格、数据表单、数据详情功能
  • 内置文件上传,无需繁琐的开发,支持云存储
  • 丰富的模块市场,后台一键快速安装

🎨 系统演示

前台演示地址

用户密码自行注册使用

后台演示地址

账号:demo 密码:123456 (演示账号为只读权限)

🎁 模块市场

丰富的模块市场,后台一键安装模块应用

模块市场

🌐 开发文档

https://modstart.com/doc系统介绍 - 图59 (opens new window)

🔧 系统安装

环境要求

  • Laravel 5.1 版本

    • PHP 5.6 PHP 7.0
    • MySQL >=5.0
    • PHP ExtensionFileinfo
    • Apache/Nginx
  • Laravel 9.0 版本

    • PHP 8.0 PHP 8.1
    • MySQL >=5.0
    • PHP ExtensionFileinfo
    • Apache/Nginx

我们的测试基于 PHP 的 5.6 / 7.0 / 8.0 / 8.1 版本,系统稳定性最好

安装说明

升级指南

参照 https://modstart.com/doc/install/upgrade.html系统介绍 - 图65 (opens new window)

🔨 开发速看

以下以一个简单的新闻增删改查页面为例,快速了解 ModStart 开发的大致流程。

数据表迁移文件

  1. class CreateNews extends Migration
  2. {
  3. public function up()
  4. {
  5. Schema::create('news', function (Blueprint $table) {
  6. $table->increments('id');
  7. $table->timestamps();
  8. $table->string('title', 200)->nullable()->comment('');
  9. $table->string('cover', 200)->nullable()->comment('');
  10. $table->string('summary', 200)->nullable()->comment('');
  11. $table->text('content')->nullable()->comment('');
  12. });
  13. }
  14. public function down()
  15. {
  16. //
  17. }
  18. }

控制器代码

  1. class NewsController extends Controller
  2. {
  3. use HasAdminQuickCRUD;
  4. protected function crud(AdminCRUDBuilder $builder)
  5. {
  6. $builder
  7. ->init('news')
  8. ->field(function ($builder) {
  9. $builder->id('id','ID');
  10. $builder->text('title', '名称');
  11. $builder->image('cover', '封面');
  12. $builder->textarea('summary', '摘要');
  13. $builder->richHtml('content', '内容');
  14. $builder->display('created_at', '创建时间');
  15. $builder->display('updated_at', '更新时间');
  16. })
  17. ->gridFilter(function (GridFilter $filter) {
  18. $filter->eq('id', 'ID');
  19. $filter->like('title', '标题');
  20. })
  21. ->title('新闻管理');
  22. }
  23. }

增加路由和导航

routes.php 增加路由信息

  1. $router->match(['get', 'post'], 'news', 'NewsController@index');
  2. $router->match(['get', 'post'], 'news/add', 'NewsController@add');
  3. $router->match(['get', 'post'], 'news/edit', 'NewsController@edit');
  4. $router->match(['get', 'post'], 'news/delete', 'NewsController@delete');
  5. $router->match(['get', 'post'], 'news/show', 'NewsController@show');

ModuleServiceProvider.php 中注册菜单信息

  1. AdminMenu::register(function () {
  2. return [
  3. [
  4. 'title' => '新闻管理',
  5. 'icon' => 'list',
  6. 'sort' => 150,
  7. 'url' => '\App\Admin\Controller\NewsController@index',
  8. ]
  9. ];
  10. });

这样一个简单的新闻增删改查页面就开发完成了。

📋 常见问题

我们列举了常见问题,遇到问题请先参考常见问题

如有其他问题推荐使用官方讨论交流群或在线讨论

✉️ 使用交流

QQ交流群: 467107293系统介绍 - 图68 (opens new window)