gpt4 book ai didi

php - 使用 pingpong 包在 laravel 5.1 中创建子模块文件夹

转载 作者:IT王子 更新时间:2023-10-28 23:55:55 25 4
gpt4 key购买 nike

我正在开发模块化项目 laravel 5.1使用 pingpong package.Which 给我的项目结构如下

laravel-app/
app/
bootstrap/
vendor/
modules/
├── Blog/
├── 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

我想在“admin”和“client”中分开这个模块文件夹,以区分我的客户端和管理端,如下所示,

laravel-app/
app/
bootstrap/
vendor/
modules/
├── Admin/
├── Blog/
├── 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
├── Client/
├── Blog/
├── 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/modules.php 文件来实现您想要的大部分内容,但是在 Admin 之间切换时您必须来回切换它和客户端

例如:

要在项目的 Admin 部分生成 (module:make) 或使用 (module:use) 模块,您需要执行以下操作:

config/modules.php文件中,将namespace调整为

/*
|--------------------------------------------------------------------------
| Module Namespace
|--------------------------------------------------------------------------
|
| Default module namespace.
|
*/

'namespace' => 'Modules\Admin',

在同一个文件中,将base_path调整为

/*
|--------------------------------------------------------------------------
| Modules path
|--------------------------------------------------------------------------
|
| This path used for save the generated module. This path also will added
| automatically to list of scanned folders.
|
*/

'modules' => base_path('modules/admin'),

这就是您需要做的所有事情,调用 php artisan module:make blog 将在 modules/admin 中创建一个博客模块。

如果您需要在项目的 AdminClient 部分之间切换,您需要在 config/modules 中调整相同的两行.php 文件来反射(reflect)。

还有一个警告:

如果您打算在模块中使用 Assets 文件夹,您还需要调整 config/modules.php 文件中的相应行,并且您将需要手动调整几个方法,其中文件路径明确写入模块的服务提供程序(例如:Admin/Blog/Providers/BlogServiceProvider.php),并且您需要修复您的 config/view.php - 只需按照注释即可。

附言您或许可以创建一个自定义命令来自动在 AdminClient 之间切换。

关于php - 使用 pingpong 包在 laravel 5.1 中创建子模块文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32843546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com