【发布时间】:2014-10-28 08:01:36
【问题描述】:
在 Layouts/default.ctp 中,您将在第 39 行看到类似这样的内容:
<div class="header-title">
<span><?= $this->fetch('title') ?></span>
</div>
fetch 暗示它是一个视图块。我在任何地方都找不到这个视图块。
目前它只显示控制器的大写复数形式。意思是说如果你在/users/add,fetch('title'); 会给你'Users'
我想改变它。所以我尝试了以下方法:
$this->set('title', 'Login');
在/users/login 控制器操作中。
没用。
我也试过
$this->assign('title', 'Login');
在/users/login 控制器操作中。
我收到此错误消息:
Call to undefined method App\Controller\UsersController::assign()
我阅读了文档和来自here
我明白了
当你想转换一个块的内容时,分配一个块的内容通常很有用 查看变量到一个块中。例如,您可能想要使用块 用于页面标题,有时将标题分配为视图变量 在控制器中:
强调我的。
这表明您可以在控制器内部使用assign。我想我已经证明这是错误的。
文档中可能有错字。请告诉我如何设置标题
【问题讨论】:
-
我指出这是针对 CakePHP 3.x 的。所以我不同意重复的标志。
-
但两者都使用相同的功能,stackoverflow 不是一个问题,即如何为每个 php 版本按值排序数组的问题!
-
我同意。那么在这种情况下,您还应该将该 2.5 问题标记为该问题的重复 stackoverflow.com/questions/2628963/…
标签: cakephp cakephp-3.0