我是CodeIgniter的新手,并尝试继续学习最佳实践。 我试图从多个来源返回数据 - 一个来源是一个mysql数据库查询,另一个来自另一个来自facebook的数据来源。
这是我到目前为止所做的:
型号:
function get_users() {
$this->db->select('id');
$this->db->from('users');
$query = $this->db->get();
return $query->results;
}
function attach_cover($user_list) {
foreach($user_list as $user){
$user->cover = get_cover_value($user->id);
}
return $user_list;
}
控制器:
$this->load->model('user_model', '', TRUE);
$data['users'] = $this->user_model->get_users();
$data['user_cover'] = $this->user_model->attach_cover($data['users']);
$this->load->view('index', $data);
视图:
foreach($data as $item) {
echo $item->id;
echo $item->cover;
}
问题:
这是正确的做法吗?还是有更好的方法?
答案 0 :(得分:2)
这是使用codedIgniter的正确方法。
只要你没有在你的视图中添加任何逻辑,就不要在任何地方使用任何数据库相关的逻辑,而是使用模型并纯粹使用控制器来组合模型和视图......你不应该去太错了。
CodeIgniter不是一个非常严格的框架,很遗憾很容易开始把东西放在错误的位置,即控制器中的sql。