Вам необходимо присоединиться к таблице comments , чтобы получить количество и группу по вашему postID. Измените вашу get_posts()
функцию в модели следующим образом:
$this->db->from('posts');
$this->db->select("posts.*, count(*) as comments_count");
$this->db->join('comments', 'posts.postID = comments.postID');
$this->db->group_by('posts.postID');
$this->db->order_by('postID', 'DESC');
return $this->db->get()->result_array();
Также вы дважды используете result_array (), что неправильно. Измените строку контроллера
$json_response2 = array('status' => 'success', 'postList' => $data->result_array());
на
$json_response2 = array('status' => 'success', 'postList' => $data);
, потому что вы уже получаете результат от модели.
Кроме того, используйте правильное имя для функции в контроллере, $this->api_model->get_posts();
Надеюсь, это поможет.