【发布时间】:2011-04-16 17:06:19
【问题描述】:
我正在解决 CI 内部的一种架构问题。 我需要能够在主控制器中实例化其他控制器及其方法。 例如
*main.php/function index():*
$controller2 = new Controller2();
$data['pre_loaded_data'] = $controller2 ->ajax_get_some_view(array('static'=>true));
这种方法背后的目标是构建加载一些屏幕部件的 ajax 应用程序 在第一次加载时静态加载,作为主 html 页面的一部分,但后来这些部分使用 ajax 方法更新以从各种其他控制器(此时使用 array('static'=>false) 参数),例如作为对 onclick 事件的响应主页。
问题在于 CI 似乎没有被设计为支持多个控制器,并引发各种与加载器相关的错误,报告某些类即使在加载时也没有加载。
在主控制器中预加载来自其他控制器的数据的最佳方法是什么?
【问题讨论】:
-
您正在使用 AJAX 加载段以在 PHP 中进行组合?除非我错过了什么,那完全是精神上的。
-
第一次加载页面时,为了速度,我使用名为 ajax_something 的控制器 php 方法来静态加载初始数据。稍后可以使用 js/ajax 更新这些块。这可以是控制器内部的内部调用,也可以是来自外部的 ajax/js 调用。这还是心理吗?
标签: php model-view-controller architecture codeigniter