【问题标题】:sending the same information to different views cakePHP将相同的信息发送到不同的视图 cakePHP
【发布时间】:2012-02-13 03:34:17
【问题描述】:

我有一个关于 cakePHP 的问题。我有 4 个 .ctp 视图页面,我想从我的控制器发送信息。这些不是静态页面,它们实际上是带有用户表单的动态页面,用户可以在其中输入信息。我有一种情况,我必须将相同的数组发送到 4 个不同的视图(因为每个视图的一部分需要该数组来显示相同​​的信息,换句话说,我想在 4 个不同的视图上显示相同的信息)。我知道通常每个控制器操作我应该有 1 个视图,但是这次我不想为我的每个视图创建 4 个类似的操作(因为就像我说的,我所做的只是发送一个数组到我的 4 个视图文件中的每一个)。如何在不为我的 4 个视图文件在控制器中创建 4 个重复操作的情况下执行此操作。我希望我在这里想要做什么已经足够清楚了。

谢谢

【问题讨论】:

  • 您将如何显示这些视图?这是一个动作相同的情况,但基于一些变量,应该使用稍微改变的视图?还是动作完全不同,但视图有一些共同点?
  • 动作相同,观点不同。基本上,我发送的是相同的数组,它将显示在每个视图的不同部分
  • 如果我没听错的话,也许你应该看到这个链接book.cakephp.org/1.3/view/1081/Elements

标签: php cakephp cakephp-1.3


【解决方案1】:

您可以简单地在控制器中使用一个操作,并根据一些逻辑render 不同的视图:

public function my_action() {
    $this->set('myVar1', ...);
    $this->set('myVar2', ...);
    $this->set('myVar3', ...);

    if (/* something */) {
        $this->render('foo'); // renders my_controller/foo.ctp
    } else if (/* or other */) {
        $this->render('bar');
    } ...
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-05
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 2019-04-04
    • 1970-01-01
    相关资源
    最近更新 更多