2

$content_for_layout が CakePHP 2.1 で廃止され、 $this->fetch('content'); に変更されたことは誰もが知っています。

fetch('content') を置く場所はどこでも、レイアウトがタグであるビューのコンテンツが表示される場所です。

私の質問は、たとえば、ビュー navigation() があり、そのビューのコンテンツは $this->fetch('nav_view') に配置され、ビュー main_board() の場合、コンテンツは $this->fetch に配置されます('main_board'),

この 2 つのフェッチは同じレイアウトで出力されます。出来ますか??

4

1 に答える 1

4

ビュー/要素/ヘルパーのどこか:

$this->start('nav_view');
// render your 'nav_view' stuff here
echo $this->element('...');
$this->end();

コンテンツと同じようにレンダリングします。

// in layout
$this->fetch('nav_view');

どうやら、これは現在、クックブックの「ビューブロックの使用」に記載されています。

于 2012-06-05T14:09:47.360 に答える