对 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');
}
}
在我的数据库中 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');
}
}