🌲Laravel8多模块/包下的项目结构的简单实践与分享

这个应该是叫包还是模块呢?随便叫了!想大佬们应该还是会比较通融的!

本菜鸡使用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 协议》,转载必须注明作者和本文链接
初从文,三年不中;后习武,校场发一矢,中鼓吏,逐之出;遂学医,有所成。自撰一良方,服之,卒。
噜噜生活
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 3

有个包记不得叫什么了,支持多模块,模块也有自己的路由和配置。

3年前 评论
噜噜生活

@Elinger 谢谢,我再看看找找,学习借鉴一下!

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!