【问题标题】:CakePHP multiple controllers using same methodCakePHP 多个控制器使用相同的方法
【发布时间】:2014-03-15 14:06:54
【问题描述】:

我有一个方法(控制器中的函数,我说得对吗?)并查看我想在我网站上的每个控制器中使用的视图。有没有办法使方法在所有控制器和视图 .ctp 文件中都是通用的?我宁愿不必到处复制粘贴。

这似乎应该是显而易见的,所以如果我只是在搜索错误的术语,请告诉我。

谢谢

【问题讨论】:

    标签: cakephp view controller


    【解决方案1】:

    共享/公共控制器代码:

    你所描述的是一个“组件”:

    组件是控制器之间共享的逻辑包。 如果您发现自己想要在 控制器,您可以考虑将一些功能包装在 组件。

    见:http://book.cakephp.org/2.0/en/controllers/components.html


    共享/通用查看代码:

    就视图而言,有几个选项。如果你想要整个视图,你可以指定渲染哪个视图:$this->render('TestView/index');

    或者,如果你想要一小段代码,你可以试试Element


    齐心协力:

    如果您发现自己创建了很多不同的“部分”(视图、控制器/组件、模型/行为)......等等,都是为了相同的通用目的(即裁剪照片),您可以考虑创建Plugin


    旁注:

    旁注:通常,我听说控制器中的函数称为“动作”,而模型中的函数称为“方法”。它们都是真正的方法(类/对象中的函数),但是 - 这就是它们通常被称为的方式。

    【讨论】:

      【解决方案2】:

      你可以把方法放在AppController中,只做一个视图。

      您将使用$this->render('/myview.ctp');

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-08-26
        • 1970-01-01
        • 2017-09-23
        • 1970-01-01
        • 1970-01-01
        • 2016-12-24
        • 1970-01-01
        相关资源
        最近更新 更多