gpt4 book ai didi

php - 在 Yii2 的其他地方渲染 View - 没有 renderPartial?

转载 作者:行者123 更新时间:2023-12-01 17:35:36 25 4
gpt4 key购买 nike

我需要在 Yii2 中的自定义组件文件内渲染部分 View ,并根据 Yii docs您可以通过以下方式访问 View 实例:

\Yii::$app->view->renderFile('@app/views/site/license.php');

我继续尝试:

Yii::$app->view->renderPartial('//my/view/');

...但随后出现错误,表明我试图访问不存在的方法。

然后我查看了 view class并注意到它没有 renderPartial 并且这是 controller 的方法类代替。

我看到它有一个 renderFile 方法和一个 render 方法;我应该使用其中哪一个?

文档没有说明 render 方法包括布局,就像 controller 类中的同名方法一样,所以我不确定;至于 renderFile 我也不是 100% 确定它是否合适?

有人可以解释一下哪种方法会产生与 renderPartial 产生相同的结果吗?

最佳答案

您可以从 Yii::$app->controller->renderPartial('myview'); 调用 renderPartial 也可以从 source code of yii\base\Controller 中看到renderPartial 调用 View 的 render 方法,以便您可以使用 Yii::$app->view->render。基本上,renderrenderFile 之间没有区别,因为 render 内部调用 renderFile。但是,当您使用 render 时,您可以以多种格式传递 $view,例如路径别名应用程序中的绝对路径模块内相对路径。对于 renderFile,您只能传递绝对文件路径或路径别名。

关于php - 在 Yii2 的其他地方渲染 View - 没有 renderPartial?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32037557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com