• Stars
    star
    402
  • Rank 107,015 (Top 3 %)
  • Language
    PHP
  • License
    Apache License 2.0
  • Created about 3 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

模块化内容管理系统 modstart.com

ModStart

基于 Laravel 的企业内容建站系统

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

企业内容建站系统

🔥 功能一览

最新版本 GitHub last release

功能完善,模块市场丰富,欢迎交流。

💡 系统简介

ModStartCMS 是一个基于 Laravel 企业内容建站系统。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。

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

功能架构

技术栈

💥 系统特性

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

🎨 系统演示

前台演示地址

http://cms.demo.tecmz.com/

用户密码自行注册使用

后台演示地址

http://cms.demo.tecmz.com/admin

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

🎁 模块市场

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

模块市场

🌐 开发文档

https://modstart.com/doc

🔧 系统安装

环境要求

  • Laravel 5.1 版本

    • PHP 5.6 PHP 7.0
    • MySQL >=5.0
    • PHP ExtensionFileinfo
    • Apache/Nginx
  • Laravel 9.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

🔨 开发速看

以下以一个简单的新闻增删改查页面为例,快速了解 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',
        ]
    ];
});

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

📋 常见问题

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

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

⭐️ 贡献代码

系统接受 Github 和 Gitee 的 Pull Request,欢迎提交代码。

文件 /vendor/modstart/modstart 底层代码修改,可以提交 PR 到以下仓库,该仓库会在每次发版自动合入所有系统。

如果是非底层代码修改,可具体提交 PR 到以下仓库

✉️ 使用交流

QQ交流群

微信交流群