1

次のようにテーブルから投稿を取得する機能を持つコントローラーがあります:-

function getPosts($user_id, $from, $to) {
    $this->db->order_by("ev_date", "DESC");
    $query = $this->db->get_where($this->table_name, array('ev_user_id'=>$user_id));

    return $query->result();
}

上記の関数では、テーブルからすべての投稿を取得できますが、テーブルから最後の 10 レコードのみを表示する必要があります。

2番目の問題は、テーブル「投稿」には、この投稿を追加するユーザーIDがあり、ユーザーIDを保存します。すべての投稿を取得するときに、「ユーザー」テーブルからユーザー名を取得する必要があります。

「User_id」によるポスト テーブルとテーブル ユーザーの一致

4

3 に答える 3

2

ユーザー名を取得するには結合が必要なようですが、codeigniter アクティブ レコードとの結合は次のように機能します。

$this->db->join('user', 'user.user_id = post.user_id');

limit を使用してクエリを制限できます

$this->db->limit(10);

出典: CodeIgniter ユーザーマニュアル

于 2013-08-19T13:46:16.800 に答える
0
function getPosts($user_id, $from, $to) {
    $this->db->order_by("ev_date", "DESC");
    $query = $this->db->get_where($this->table_name, array('ev_user_id'=>$user_id), 10, 0);

    return $query->result();
}

CI ドキュメントから。

$query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset);
于 2013-08-19T13:42:57.340 に答える