我正在使用laravel开发一个网站,我正在使用模块,但我想知道我是否可以使这些模块具有子模块
之类的东西laravel-app/
app/
bootstrap/
vendor/
modules/
├── Admin/
├── Assets/
├── Config/
├── Console/
├── Database/
├── Migrations/
├── Seeders/
├── Entities/
├── Http/
├── Controllers/
├── Middleware/
├── Requests/
├── routes.php
├── Providers/
├── BlogServiceProvider.php
├── Resources/
├── lang/
├── views/
├── Repositories/
├── Tests/
├── composer.json
├── module.json
├── start.php
|──modules
|──AdminConfig
├── Assets/
├── Config/
├── Console/
├── Database/
├── Migrations/
├── Seeders/
├── Entities/
├── Http/
├── Controllers/
├── Middleware/
├── Requests/
├── routes.php
├── Providers/
├── BlogServiceProvider.php
├── Resources/
├── lang/
├── views/
├── Repositories/
├── Tests/
├── composer.json
├── module.json
├── start.php
我已经通过更改config / module.php中的文件来实现这一点,但它不能与php artisan serve一起运行
答案 0 :(得分:0)
Laravel的文档提供了有关directory structure的一些信息。
您的大多数应用程序都位于app目录中。默认情况下,此目录在App下命名,并由Composer使用PSR-4自动加载标准自动加载。
换句话说,只要您按照PSR-4,就可以按照自己的方式构建应用。因此,我会使用正确的PSR-4命名空间在app目录中创建模块。
示例:
namespace App\Module1\Services;
namespace App\Module2\Services;
namespace App\Services; //For common services
然而,在我的应用中,我更喜欢制作"模块"在现有目录中。
示例:
namespace App\Services\Module1;
namespace App\Services\Module2;
namespace App\Services; //For common services