cakePHP布局数据,使用requestAction,有没有另外一种方法?

问题描述:

我不知道一个已知问题,requestAction是一个资源浪费。不过,我需要一些动态数据以我的默认布局。我正在使用它的元素,requestAction调用。
是唯一的方法吗?cakePHP布局数据,使用requestAction,有没有另外一种方法?

requestAction没有任何问题,只是非常容易地低效地调用它,并且会影响应用程序的性能。它的工作方式,最终会导致怪物对象膨胀与属性等 - 你不需要的东西,如果你意识到它会发生这样的事情,可能不会拉。有多少个开发人员不会花费额外三秒钟的时间来输入$ this-> Other-> Model->如果它可以避免潜在尝试调试其中一个庞然大物的情况?

在100次中有85次,有更高效的(应用程序性能)方式来执行您需要的任何requestAction()。实际上,有内置蛋糕另一种方法,做几乎同样的事情,只是它意味着在控制器中使用,如果我能找到它,我会链接...

编辑我似乎无法找到它。这有点额外晦涩。

对您的问题的回答/建议,避免requestAction在视图/元素中特别容易。

如果数据是少抽象和更动态的,AJAX - >呼叫控制器/方法,通过任何数据等,取动态结果。

如果数据是高度抽象的或适用的 - 以便您在默认布局中需要它 - 请考虑将其放入AppController或甚至引导加载程序中。这可能是一种更有效的解决方案 - 将其从流程阶段推出,而不是在上游进行渲染,以便在渲染阶段进行。

组件/助手,当然,将是另一种方式来定位多个控制器+布局级视图数据提取。

HTH :)

我相信requestAction是一个很好的工具。大多数MVC框架甚至不会考虑需要显示多个内容,因此您确实需要单个布局中的大部分情况。 我不确定它是如何浪费资源的,以及为什么文档使您认为它是性能瓶颈。用正确的键使用缓存,它应该做的伎俩。