Php 如何在两个(yii2 basic)应用程序之间共享模型文件夹
我有两个使用相同数据库的Php 如何在两个(yii2 basic)应用程序之间共享模型文件夹,php,model,yii2,Php,Model,Yii2,我有两个使用相同数据库的yii2basic应用程序。 我目前的结构是: /www /Project A /components /config /controller /models /... /Project B /components /config /controller /models /... 但我想创建这个结构 /www /Project A
yii2basic
应用程序。
我目前的结构是:
/www
/Project A
/components
/config
/controller
/models
/...
/Project B
/components
/config
/controller
/models
/...
但我想创建这个结构
/www
/Project A
/components
/config
/controller
/...
/Project B
/components
/config
/controller
/...
/shared
/models
我该怎么做?1)将您的模型放入/path/to/www/shared/models
并将它们放入shared/models
命名空间中
2) 在配置中为两个应用程序设置@shared
别名,使其指向/path/to/www/shared
,如下所示
return [
// ...
'aliases' => [
'@shared' => '/path/to/www/shared',
],
];
然后,你应该能够像直接在你的应用程序中一样使用这些模型
您可以阅读有关自动加载和定义别名的更多信息1)将您的模型放入/path/to/www/shared/models
并放入shared/models
命名空间
2) 在配置中为两个应用程序设置@shared
别名,使其指向/path/to/www/shared
,如下所示
return [
// ...
'aliases' => [
'@shared' => '/path/to/www/shared',
],
];
然后,你应该能够像直接在你的应用程序中一样使用这些模型
您可以阅读有关自动加载和定义别名的更多信息尽管它们共享同一个数据库,但它们是共享同一个域,还是托管在两个不同的域中?我建议遵循
advanceapp
结构,在同一根下导入两个app
,使用yii-app-advanced并将共享模型放在一起。默认情况下,有两个应用程序(前端和后端),但您可以添加任意数量的应用程序。您可以创建一个模块
,并将其作为两个项目的外部依赖项进行管理,尽管它们共享同一数据库,但共享同一个域,还是托管在两个不同的域中?我建议遵循advanceapp
结构,在同一根下导入两个app
,使用yii-app-advanced并将共享模型放在一起。默认情况下,有两个应用程序(前端和后端),但您可以添加任意数量的应用程序。您可以创建模块
,并将其作为两个项目的外部依赖项进行管理