我学习cakephp从几天…所以请帮忙,谢谢。
我做了一个控制器——
class PostController extends AppController {
var $name='Posts';
function index(){
$posts=$this->Post->find('all');
$this->set(compact('posts'));
}
视图中有带有索引的post文件夹。CTP文件。我想问它从哪里得到"CakePHP:快速开发php框架",从哪里获取内容。我从控制器发送这个数据,所以它只打印var_dump($posts);
…
cake php在"app/view/layout "文件夹中有默认的布局文件。默认文件名。此文件夹中的CTP将作为默认值。
如果你打开默认。在布局中,你会看到像
这样的内容<h1><?php echo $this->Html->link($cakeDescription, 'http://cakephp.org'); ?></h1>
和其他链接定义…你可以在视图中添加注释并检查有什么变化。
这里是视图获取的地方"CakePHP:快速开发php框架"
这一行
<?php echo $this->fetch('content'); ?>
从控制器中获取数据以显示我们在控制器
中使用$this->set()设置的视图如果你想改变布局,创建你自己的布局文件夹然后在控制器中使用
class PostController extends AppController {
var $name='Posts';
function index(){
$posts=$this->Post->find('all');
$this->set(compact('posts'));
$this->layout = false; // ot you can set ypur own file like 'xyz' for 'xyz.ctp'
}
设置控制器中每个动作的布局,使用
function beforeFilter() {
parent::beforeFilter();
$this->layout = 'layout';
}
要了解更多关于布局的信息,请参阅http://book.cakephp.org/2.0/en/views.html#layouts
希望你得到我
"CakePHP:快速开发php框架"
查看上面的views -> layout -> default.ctp
文件。
也改变默认的cakephp routing
,所以你可以看到的帖子索引行动,当你有文章在URL
从控制器调用布局的最好方法是
$this->layout = 'Your layout page name';