查看CakePHP中的重用

时间:2011-04-29 14:36:30

标签: views cakephp-1.3 elements

我有一个创建侧边栏的控制器。在侧边栏的中间是一小部分患者数据,需要不时通过ajax刷新。所以,我为该特定区域创建了一个元素和一个函数。当我渲染整个侧边栏时,我使用requestAction来获取元素的患者数据。但是,当我正在执行ajax请求时,我直接调用患者数据函数并返回它的视图。然后,Ajax使用视图中的数据加载div。

我不满意的是,我现在在两个地方拥有相同的视图代码。一旦进入视图并且一次进入元素。理想情况下,我确信我应该使用这两个元素。我想我可以为ajax请求创建另一个函数来调用,这只需要一个requestAction来获取元素数据。但是,这似乎是一个不必要的额外层。

在Xaraya,我可以通过简单地在侧边栏视图中使用患者数据视图来避免这一切。

我应该如何处理这个以最有效地重复使用相同的代码?

1 个答案:

答案 0 :(得分:2)

你是对的是重复的代码困扰。将所有内容移动到元素。从您需要的所有位置调用元素。配置它在两种情况下都有效。所以基本上,替换视图实例也可以调用元素。你是对的。

看来你的挂机是“不必要的额外层”。但是,如果它保持代码清洁(通过删除重复的代码)它真的是一个不必要的额外层?我会说不。它使它可以在多个位置重复使用,因此非常必要。

听起来你应该相信自己的直觉。 ;)

快乐的编码!