Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cakephp对同一页面使用多个布局_Cakephp - Fatal编程技术网

Cakephp对同一页面使用多个布局

Cakephp对同一页面使用多个布局,cakephp,Cakephp,我正在cakephp中从事一个项目。我使用View/Layouts/default.ctp文件来存储我的页眉和页脚,这将应用于应用程序中的所有页面。 然而,还有另一种布局,我只希望使用某些页面,以及页眉和页脚 如何使页面同时使用这两种布局?您可以扩展视图。将页眉/页脚放在View/Common/default.ctp中并扩展它 $this->extend("/Common/default"); 还可以使用元素或块,具体取决于布局的设置方式和所需内容。 您可以根据逻辑从控制器或视图更改布局

我正在cakephp中从事一个项目。我使用View/Layouts/default.ctp文件来存储我的页眉和页脚,这将应用于应用程序中的所有页面。 然而,还有另一种布局,我只希望使用某些页面,以及页眉和页脚


如何使页面同时使用这两种布局?

您可以扩展视图。将页眉/页脚放在View/Common/default.ctp中并扩展它

$this->extend("/Common/default");
还可以使用元素或块,具体取决于布局的设置方式和所需内容。

您可以根据逻辑从控制器或视图更改布局

// from a controller
public function admin_view() {
    // stuff
    $this->layout = 'admin';
}

// from a view file
$this->layout = 'loggedin';

仅供参考:

每次页面加载只能使用一种布局。但是,您可以将页眉和页脚代码放入其中,这样在两个版面中都可以使用。

为什么希望两个版面都在同一页面中?
You can use multiple layout..........

class IndexController extends AppController {

    public function test1() {
        $this->layout = 'layout1';
    }

    public function test2() {
        $this->layout = 'layout2';
    }

    public function testn() {
        $this->layout = 'layoutn';
    }

}