?Laravel8多模組/包下的專案結構的簡單實踐與分享

嚕嚕生活發表於2021-03-05

這個應該是叫包還是模組呢?隨便叫了!想大佬們應該還是會比較通融的!

本菜雞使用laravel開發專案快半天了,因為設計的專案有多個不相互關聯的應用的需求,又不想搞的太複雜,所以簡單設計了一下多包下的目錄結構,測試了一下,還是挺方便的,而且也方便包不同工程的移植!

APP\HTTP\BUNDLES
+---StudentBackstageBundle
|   |   readme.md
|   |
|   +---Controllers
|   |       StudentController.php
|   |
|   \---Routes
\---StudentClientBundle
    |   readme.md
    |
    +---Controllers
    |       StudentController.php
    |
    \---Routes
            webRoute.php

看有一些的專案,都喜歡把路由都放在根routes下的配置檔案裡,我覺得是不太合理的,所以每一個包都自已再加一個路由配置檔案

class webRoute
{

    public static function register()
    {
        Route::group(['prefix' => 'api/student', 'middleware' => 'api.response'], function () {
            Route::get('/random', [StudentController::class, 'randomTemplate'])->name(StudentController::class . '@randomTemplate');
        });
    }
}

然後再到根目錄下的routes裡去註冊路由

\App\Http\Bundles\StudentClientBundle\Routes\webRoute::register();

這樣以後這個專案包要關閉了,只需要註釋掉一行程式碼就可以了,還是比較方便好用的!

laravel8下測試了一下,執行正常!

本作品採用《CC 協議》,轉載必須註明作者和本文連結
初從文,三年不中;後習武,校場發一矢,中鼓吏,逐之出;遂學醫,有所成。自撰一良方,服之,卒。

相關文章