Home > PHP > titleにsetできない件@CakePHP

titleにsetできない件@CakePHP

実際に CakePHP を使ってみたので、つまづいたところを中心にメモ。

■ title に set できない
Bake した後、適当に見出しを変更しようと思って index.ctp の h2 タグを修正してみました。

  1.  <h2><?php echo $title ?></h2>

Controller で set しておきます。

  1.  <?php
  2.   $this->set(‘title‘, ‘CakePHP を使ってみたよ!’);
  3.  ?>

これが表示できない。そんな変数しらないよ。って怒られる。
理由は Controller#set にありました。

  1.  <?php
  2.  if ($name === title) {
  3.      $this->pageTitle = $value;
  4.  } else {
  5.      if ($two === null && is_array($one)) {
  6.          $this->viewVars[Inflector::variable($name)] = $value;
  7.      } else {
  8.          $this->viewVars[$name] = $value;
  9.      }
  10.  }
  11.  ?>

‘title’だけ特別扱いしてる。
‘title’に set すると pageTitle に値を入れてくれるんだねー、って誰が言った?

少なくともマニュアルの「4.5.4 コントローラのメソッド」の set の項には書いていないし、API にも書かれていない。
pageTitle への値の設定はマニュアルにも

$this->pageTitle = “hogehoge”;

となっているし、個人的にもこの set の挙動は不可解。

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://blog.magellanic.net/archives/585/trackback
Listed below are links to weblogs that reference
titleにsetできない件@CakePHP from Olen Onnellinen 2

Home > PHP > titleにsetできない件@CakePHP

Search
Feeds
Link
あわせて読みたいブログパーツ
Meta
AD








DMM.com 家電・日用品通販

Return to page top