我正在我的Controller文件中使用以下代码来生成完整的网站URL
$this->Url->build(['controller' => 'home', 'action' => 'index'], true);
。
但是我收到“在布尔值上调用成员函数build()的错误”。我不使用
的原因Router::URL(['controller' => 'home', 'action' => 'index']);
是我不想要相对URL。我不能在控制器中使用“网址构建器”吗?
我认为,您的错误的主要原因是控制器名称错误。
首先,Name Conventions说
“控制器类名称是复数形式,PascalCased,并以控制器结尾。UsersController和ArticleCategoriesController都是常规控制器名称的示例。”
因此您的文件名必须类似于HomesController.php
。接下来,类名称应类似于此HomesController
。
第二,对于CakePHP字符大小很重要。如果要为控制器建立URL,则必须执行以下操作
$this->Url->build(['controller' => 'Home', 'action' => 'index'], true);
控制器名称应大写。