什么是从其他方法返回数据库查询和其他信息的最佳方法

时间:2015-02-18 04:40:45

标签: php arrays codeigniter

我是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;
}

问题

这是正确的做法吗?还是有更好的方法?

1 个答案:

答案 0 :(得分:2)

这是使用codedIgniter的正确方法。

只要你没有在你的视图中添加任何逻辑,就不要在任何地方使用任何数据库相关的逻辑,而是使用模型并纯粹使用控制器来组合模型和视图......你不应该去太错了。

CodeIgniter不是一个非常严格的框架,很遗憾很容易开始把东西放在错误的位置,即控制器中的sql。