来自C#/。NET MVC 3/4,我并不习惯CodeIgniter的模型实现。
文档显示了在控制器方法中加载的模型,但是我几乎在每个方法中使用该模型,而我的模型通过其构造函数将属性中使用的数据存储在属性中。
有没有理由不在我忽略的控制器构造函数中实例化模型?
答案 0 :(得分:6)
您也可以按照以下方式加载模型: 意味着如果您的模型在任何文件夹中,那么使用以下代码可以在控制器中加载模型。
$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');
}
}
希望它能帮到你......
答案 1 :(得分:5)
没有理由不为每个控制器激活加载模型。它甚至可以放在所有控制器的configuration's autoload中。
不总是加载它的唯一原因是许多操作不需要模型。然后你可以节省一点记忆和时间。