对 CodeIgniter 视图、控制器和模型的建议

Advice for CodeIgniter views, controller and model

在我的数据库中 table 我有 'category_id'。我想要做的就是为不同的类别加载不同的视图(例如猫、狗等的图片)。

我正在使用 'for' 循环从模型中获取类别,我认为应该有这样的东西

if($row['category'] == 'cat') $this->load->view('cat')

// this is how I get the categories

public function get_categories() {  
    $data = array();
    $q = $this->db->get('categories');
    foreach($q->result_array() as $row) {
        $data[] = $row;
    }
        return $data;
}

但问题是在模型中加载视图不是一个好主意,它必须在控制器中。 我的问题是我应该做什么,模型中的逻辑和控制器中要加载的不同类别的视图

我希望我说得足够清楚,对不起我的英语。

提前致谢

您应该从控制器调用模型方法,并将 return 数据调用到控制器。然后在控制器操作中,您可以查看模型方法的结果并加载所需的视图

在你的模型中创建这个函数说 "category_model"

public function get_categories() {  
    $q = $this->db->get('categories')->result_array();
        return $q;
}

将此代码放入您的控制器

public function index(){
   $data=$this->category_model->get_categories();
   foreach($data as $row){
    if($row['category'] == 'cat'){
       $this->load->view('cat');
    }
}