有一种方法可以将控制器动作直接用作CakePHP中的元素?

有一种方法可以将控制器动作直接用作CakePHP中的元素?,cakephp,Cakephp,我想使用CakePHP在另一个视图中为一个控制器操作使用视图,并传递一些变量。有人在这种情况下或类似的情况下工作过吗?我想我理解你的意图,但我很确定这不可能直接实现——正如你所发现的那样 在这种情况下,我倾向于在两个视图中找到我想要复制的代码量,将其放入一个元素中,然后在两个视图中调用$this->rendereament('path-to/element') 您可以使用$this->requestAction('controller/function')做一些事情,但它会带来很大的开销 我建议

我想使用CakePHP在另一个视图中为一个控制器操作使用视图,并传递一些变量。有人在这种情况下或类似的情况下工作过吗?

我想我理解你的意图,但我很确定这不可能直接实现——正如你所发现的那样

在这种情况下,我倾向于在两个视图中找到我想要复制的代码量,将其放入一个元素中,然后在两个视图中调用
$this->rendereament('path-to/element')

您可以使用
$this->requestAction('controller/function')
做一些事情,但它会带来很大的开销


我建议考虑重新格式化您的代码并使用上面的元素建议。

我想我理解您的尝试,但我非常确定这不可能直接实现——正如您所发现的那样

在这种情况下,我倾向于在两个视图中找到我想要复制的代码量,将其放入一个元素中,然后在两个视图中调用
$this->rendereament('path-to/element')

您可以使用
$this->requestAction('controller/function')
做一些事情,但它会带来很大的开销


我建议您考虑重新格式化您的代码并使用上面的元素建议。

rendereament()已被弃用(在即将发布的1.3版本中不再存在),请改用element()。谢谢Dave,我正以这种方式工作。我只是想删除requestAction,因为在最后做了一些更改后,我需要一个在控制器中没有任何以前逻辑的表单。RenderRelation()已被弃用(在即将发布的1.3版本中不再存在),请改用element()。谢谢Dave,我正以这种方式工作。我只是删除requestAction,因为在最后做了一些更改之后,我需要一个在控制器中没有任何先前逻辑的表单。