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

Tom*_*mov 1 php yii2

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

'urlManagerFrontendView' => [
    'class' => 'yii\web\urlManager',
    'baseUrl' => $_SERVER['DOCUMENT_ROOT'] . '/frontend/view/',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
],
Run Code Online (Sandbox Code Playgroud)

这就是我尝试渲染它的方式(从后端):

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

但我得到的是一个错误:

The view file does not exist: /home/projects/tashev-online/htdocs/backend/views/home/projects/tashev-online/htdocs/frontend/viewpage/product.php
Run Code Online (Sandbox Code Playgroud)

显然我没有正确创建它:)那么你们能帮助我解决我的问题吗?到达前端的正确方法是什么?先感谢您!

Biz*_*ley 5

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

return $this->render('../../../frontend/views/page/product', ...
Run Code Online (Sandbox Code Playgroud)