logo
0
0
WeChat Login

ModStart

基於 Laravel 的企業內容建站系統

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

企業內容建站系統

🌐 開發文檔

https://modstart.com/doc

🔧 系統安裝

環境要求

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

我們的測試基於 PHP 的 5.6 / 7.0 / 8.0 / 8.1 版本,系統穩定性最好

🔨 開發速看

以下以一個簡單的新聞增刪改查頁面爲例,快速了解 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',
        ]
    ];
});

這樣一個簡單的新聞增刪改查頁面就開發完成了。

📋 常見問題

我們列舉了常見問題,遇到問題請先參考常見問題

如有其他問題推薦使用官方討論交流羣或在線討論

About

No description, topics, or website provided.
56.79 MiB
0 forks0 stars1 branches0 TagREADMEApache-2.0 license
Language
PHP67.2%
Blade24.8%
HTML3.6%
Vue3%
Others1.4%