假设我们有如下代码:
class My_controller extends CI_Controller
{
private $model_name;
function __construct($model_name)
{
$this->model_name = $model_name;
}
function index()
{
//Use the model here
}
}
我应该如何创建一个处理模型,在索引函数中使用?我的意思是,我不知道模型的名称,我该如何访问它?
——编辑——
通常,我们会像这样加载一个模型:
$this->load->model('some_model');
$this->some_model->doSomething();
这里,我们知道模型的名称。
现在,假设My_Controller
是一个类,其他一些控制器继承它。每个从My_Controller
继承的类,设置$model_name
属性。这里我们不知道模型的名称,所以我们需要一个模型的句柄。如何检索该句柄?
我希望这能澄清一点。
你可以给模型一个别名。
$this->load->model($this->model_name, '', 'some_model');
$this->some_model->doSomething();