如何在前端的站点控制器中使用来自不同领域的模型。实际上我们目前使用的是Yii2高级框架,我们希望将后端放在不同的域,前端放在不同的域,所以我们需要一些后端模型在前端,那么我如何给出后端控制器在前端的路径。
发布于 2016-01-07 16:08:02
只需添加控制器内部涉及的名称空间的相关用法
如果你的模型是通用的
use common\models\YuorModel;或者它们是否在后端
use backend\models\YuorModel;或前端
use frontend\models\YuorModel;发布于 2016-01-11 00:40:39
如果两个域名都指向同一服务器,则这是可能的。因此,如果您使用高级模板作为项目的基础,但backend文件夹与frontend文件夹位于不同的文件夹中,则必须更改common->boostrap文件中的别名路径。
例如,这可能是服务器中的文件夹结构,其中公共文件夹位于两个域文件夹之外。
- public_html
----- xyz.com
--------- frontend
----- common
--------- config
------------- bootstrap.php
----- admin.xyz
--------- backend您的bootstrap.php内容应该是这样的。
Yii::setAlias('common', dirname(__DIR__));
Yii::setAlias('frontend', dirname(dirname(__DIR__)) . '/xyz.com/frontend');
Yii::setAlias('backend', dirname(dirname(__DIR__)) . '/admin.xyz/backend');然后在你的前端控制器中,前几行应该是这样的。
namespace frontend\controllers;
use backend\models\TheModelToUse; 如果您想要使用backend应用程序中的多个模型,则必须相应地添加每个模型。
https://stackoverflow.com/questions/34649950
复制相似问题