我有一堆模块在模块文件夹。例如"Modules/Customers">
我需要将所有内容移动到"Modules/Core/Customers"保持所有功能正常工作。此外,我必须为一些模块使用另一个子文件夹:
Modules
|___ Core
| |__ Customers
| |__ Products
|
|___ External
|__ Taller
我想可能有三种可能性:
1-幸运的:自动使用一个工匠命令,但我没有找到任何文档(https://docs.laravelmodules.com/)
2-手动更改文件和配置,但我认为这会使名称空间保持不变,我认为这是不可接受的。
3-最糟糕但可能的:手动更改名称空间和配置文件。
我去了@lk77建议的第三个,一切都是正确的,如果我改变了配置文件模块模块的文件夹模块.php,除了然后我不能添加几个路径(或者我找不到的方式,因为它似乎不是一个数组)或更通用的模块/*路径。
'paths' => [
/*
|--------------------------------------------------------------------------
| Modules path
|--------------------------------------------------------------------------
|
| This path used for save the generated module. This path also will be added
| automatically to list of scanned folders.
|
*/
'modules' => base_path('Modules/Core'),
非常感谢!
Thanks very much
这是我最后做的。对于先前在" modules ":
中创建的现有模块1-移动文件到Modules/Core文件夹,手动更改所有引用到"Modules/"模块/Core"在"app"、"bootstrap"文件夹中和";Modules"(通过替换sublime中的所有单词:-))。之后,需要手动更改文件"composer.json"中的引用。和";module.json">
2-在config/modules.php中激活scan:
'scan' => [
'enabled' => true,
'paths' => [
base_path('Modules/Core'),
base_path('Modules/External'),
base_path('vendor/*/*'),
],
],
这样做后,旧模块似乎工作正常,但试图包括新的触发错误。
事实上,那些包含了管理子模块/子文件夹的功能的版本在发布后不久就被淘汰了。
所以,最后我想由于存在问题,最好不要对包使用这种方法。
最后,我们将使用Laravel默认树中的子文件夹存放核心模块,并使用Laravel -modules包存放外部和可选的自定义模块:
app
|
|--- Http
| |
| |--- Controllers
| . |
| . |--- Customers
| |--- Products
|
|--- Models
. |
. |--- Customers
. |--- Products
.
.
Modules
|--- Taller
.
.
.