4

来自 C#/.NET MVC 3/4,我不太习惯 CodeIgniter 的模型实现。

该文档显示模型正在控制器方法中加载,但是我在几乎每个方法中都使用该模型,并且我的模型通过其构造函数将跨其方法使用的数据存储在属性中。

有什么理由不在我忽略的控制器构造函数中实例化模型吗?

4

2 回答 2

7

您也可以按照以下方式加载模型:意味着如果您的模型在任何文件夹中,那么使用以下代码您可以在控制器中加载模型。

$this->load->model('modelFolder/' . $this->controller . '_model');

例如。:如果您的模型在名为“ modelFolder”的文件夹中,请执行以下操作:

 class demoController extends CI_Controller {

        var $controller = "user";    

        /* Local Constructor Will Be Overriding The One In The Parent Controller Class So We Need To Manually Call It. */

        public function __construct() {
            parent::__construct();        
                $this->load->model('modelFolder/' . $this->controller . '_model');
                $this->load->model('common_model');         
              }
    }

希望它会帮助你...

于 2012-12-27T06:03:38.920 回答
5

没有理由不为每个控制器激活加载模型。它甚至可以放入所有控制器的配置自动加载中。

不总是加载它的唯一原因是如果许多操作不需要模型。然后你可以节省一点内存和时间。

于 2012-10-18T22:49:28.037 回答