templates - 我如何在cakephp中实现多模板

标签 templates cakephp

我使用 CakePHP 框架,并且希望在我的项目中拥有多个模板。
CakePHP有没有办法实现多个模板?

例如,管理员可以在后端选择第一个或第二个模板,用户可以使用相同的模板。 (就像在 Joomla 后端一样)。如果有什么办法,我该如何实现?

最佳答案

只是向您提供有关如何做到这一点的基本想法。

在 app_controller 中尝试以下代码。

<?php
class AppController extends Controller
{
    var $components = array( 'Auth','Session', 'RequestHandler','Email','Gzip.Gzip','SwiftMailer');

    var $helpers = array( 'Javascript', 'Form', 'Html', 'Session','Time','Custom','Paginator','Text' );

    function beforeFilter()
    {
        if(isset($this->params['admin']) && $this->params['admin'] == 1)
        {
            $this->layout = "admin";
        }
        else
        {
            $this->layout = "default";
        }       
    }
?>

在扩展 app_controller 的其他 Controller 文件中添加您必须具有如下代码。

<?php
class OtherController extends Controller
{
    var public $uses = array('ModelName');

    function beforeFilter()
    {
        parent::beforeFilter();
    }
?>

您还可以将 $this->layout 覆盖到每个 Controller 操作。

关于templates - 我如何在cakephp中实现多模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14474023/

相关文章:

c++ - 使用基于模板的构造函数构造 std::function

python - 如何在 Django 中的 HTML 表单上显示表单中的多对多字段

cakephp - 使用 cakephp 中模型类的 Controller 方法

CakePHP 2.0 : Odd Auth Login Issue

php - 在 php 或 Cakephp 中使用 fgetcsv 导入大型 CSV 文件

php - cakephp 逗号分隔的 id 作为外部 id

c++ - std::is_base_of 和 if 错误

c++ - 模板模板参数访问

c++ - 包扩展不在最后一个参数中的可变参数函数模板

datetime - 为什么在修补/保存时日期/时间值解释不正确?