php - Error in codeigniter call to undefined method with my model

I am new in codeigniter, I've read how to load some models with this framework. Now i have a problem regarding with using my model. I have an error of Message: Call to undefined method User_model::select().

My situation is simple, I want to implement a data table and i am using my model by it. Here is what my error comes:

//total records
            foreach ($this->user->select("COUNT(*) AS count", $where, $join) as $key => $value) {
                $data["iTotalDisplayRecords"] = $value->count;
                $data["iTotalRecords"] = $value->count;
            }

as you can see, i was using $this->user which is refers to my model i loaded in my constructor:

public function __construct() {
        parent::__construct();
        if (!$this->ion_auth->logged_in()){
            redirect('auth/login', 'refresh');//redirect them to the login page
        }
        if (!$this->ion_auth->is_admin()){
            redirect(base_url().'login', 'refresh');
        }else{
            $this->admin_id = $this->session->userdata('user_id');
            $this->load->library("pagination");
            $this->load->model('user_model','user');                    
        }
    }

Here is the code of my model:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class User_model extends CI_Model {
    public function __construct() {
        if ($this->ion_auth->logged_in()){
            $this->user_id = $this->session->userdata('user_id');
            $group = $this->ion_auth->get_users_groups($this->user_id)->result();
            $this->group_id = $group[0]->id;
        }
    }

    public $tbl_name = "users";

}

Answer

Solution:

No this is not the way to call select in CI3. You have to write your own method in the model class then call that method.

I have rewrite your model, try this:

<?php
defined('BASEPATH') or exit('No direct script access allowed');

class User_model extends CI_Model
{

    private $tbl_name = "users";

    public function __construct()
    {
        if ($this->ion_auth->logged_in()) {
            $this->user_id = $this->session->userdata('user_id');
            $group = $this->ion_auth->get_users_groups($this->user_id)->result();
            $this->group_id = $group[0]->id;
        }
    }

    public function select($select, $where, $join)
    {
        $this->db->select($select);
        $this->db->from($this->$tbl_name);
        $this->db->where($where);
        $this->db->join($join);
        return $this->db->get()->result();
    }
}

Source