$this->viewPath 不适用于 CakePHP 3.1

ToX*_* 82 2 cakephp cakephp-3.1

我已通过 Composer 将 cakePHP 应用程序更新到 3.1,并且正在尝试修复所有小警告或已弃用的警告。

我可以轻松修复这些$this->layout内容,但我不明白如何修复viewPath错误。

查看迁移指南,看起来应该是完全相同的事情:

$this->viewPath = 'Element';
Run Code Online (Sandbox Code Playgroud)

应该成为

$this->viewBuilder()->viewPath('Element');
Run Code Online (Sandbox Code Playgroud)

但这不起作用,我得到的唯一的就是

Error: Call to undefined method Cake\View\ViewBuilder::viewPath() 
File /var/www/myapp/src/Controller/InvoicesController.php 
Line: 375
Run Code Online (Sandbox Code Playgroud)

解决这个问题的正确方法是什么?

bur*_*zum 5

来自同一迁移指南的“查看”部分:

View::$viewPath 已弃用。您应该使用 View::templatePath() 代替。

猜猜现在是:

$this->viewBuilder()->templatePath('Element');
Run Code Online (Sandbox Code Playgroud)