有关代码点火器视图、控制器和模型的建议


Advice for CodeIgniter views, controller and model

在我的数据库表中,我有'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;
}

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

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

提前谢谢你

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

在你的模型中创建这个函数说"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');
    }
}