Yii2从后端控制器渲染前端视图

时间:2017-10-16 05:46:43

标签: php yii2

我的任务很简单。我必须从后端控制器渲染前端视图。到目前为止,我所做的是在urlManagerFrontendView中创建main.php路径:

'urlManagerFrontendView' => [
    'class' => 'yii\web\urlManager',
    'baseUrl' => $_SERVER['DOCUMENT_ROOT'] . '/frontend/view/',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
],

这就是我试图渲染它(从后端):

return $this->render(''.Yii::$app->urlManagerFrontendView->baseUrl.'page/product', [
            'model' => $product,
            'product_rel' => $product_rel,
            'thispage' => $thispage,
        ]);

但我得到的是一个错误:

The view file does not exist: /home/projects/tashev-online/htdocs/backend/views/home/projects/tashev-online/htdocs/frontend/viewpage/product.php

显然我没有正确创造它:)所以你们可以用我的道路帮助我吗?到达前端的正确方法是什么?提前谢谢!

1 个答案:

答案 0 :(得分:3)

在这种情况下,您无需对UrlManager执行任何操作。只需使用相对路径调用视图(如此或类似):

return $this->render('../../../frontend/views/page/product', ...