0

これは私のコードです:

私のモデル:My_model

function load_modules(){

$modules = $this->db->query('SELECT name FROM module');
$result = $modules->result_array();

return $result;

}

function load_lesson($modname){

$lessons = $this->db->query(
'SELECT lesson.name 
FROM lesson 
INNER JOIN module 
ON module.id = lesson.moduleid and module.name = $modname'
); 

$result = $lessons->result_array();

return $result;

}

私のコントローラー:My_controller

$this->load->model('My_model');
$arraydata['values'] = $this->My_model->load_modules();

そして私の見解では:

foreach($values as $modulename){

load_lesson($modulename); // This is the method from my model which
// I want to be access in my controller in a way that will work like this.

}

私がやりたかったのは、各モジュールのすべてのレッスンを受講できるようにすることです。しかし、私はコントローラーでそれを行う方法を理解することはできません。あなたがこれで私を助けることができることを願っています。ありがとう!

4

1 に答える 1

1

ビューからモデルのメソッドを呼び出そうとしないでください。コントローラでこのようなことを試してください。

$this->load->model('My_model');
$arraydata['values'] = $this->My_model->load_modules();
foreach($arraydata['values'] as $key=>$value){
  $arraydata['values'][$key]['lessons']=$this->My_model->load_lesson($value);
}
于 2013-01-30T13:26:00.790 に答える