>我正在控制器文件中使用以下代码来生成完整的站点URL
$this->Url->build(['controller' => 'home', 'action' => 'index'], true);
.
但是我收到"在布尔值上调用成员函数build(("错误。我不使用的原因
Router::URL(['controller' => 'home', 'action' => 'index']);
是我不想要相对网址。我不能在控制器中使用 URL 生成器吗?
我认为,您的错误的主要原因是控制器的名称错误。
首先,名称约定说
"控制器类名是复数的,PascalCased,并以控制器结尾。UsersController 和 ArticleCategoriesController 都是传统控制器名称的示例。
所以你的文件名必须像HomesController.php
.接下来,类名应该是这样的HomesController
。
其次,对于 CakePHP 字符大小很重要。如果你想构建控制器的URL,你必须这样做
$this->Url->build(['controller' => 'Home', 'action' => 'index'], true);
其中控制器名称应大写。
更多关于在 CakePHP 中构建 URL 的信息