codeigniter分页类中的自定义查询

问题描述 投票:0回答:1

我正在使用codeigniter分页类,我被困在这段代码中!以下代码从employees表中读取整个列,但我的查询包含一个连接。我真的不知道如何使用配置设置运行我自己的查询!

$config['per_page'] = 20; 
$view_data['view_data'] = $this->db->get('employees', $config['per_page'], $this->uri->segment(3));

我自己的查询:

$this->db->select('emp.code as emp_code,emp.fname as emp_fname,emp.lname as emp_lname,emp.faname as emp_faname,emp.awcc_phone as emp_phone,emp.awcc_email as emp_email,position as position,dep.title as department');
$this->db->from('employees as emp');
$this->db->join('departments as dep','dep.code=emp.department_code');
$this->db->where('emp.status = 1');
$employees_list = $this->db->get();
return $employees_list;
codeigniter pagination
1个回答
0
投票

你接近是完全错误的。在Controller中这样做

$this->load->model('mymodel');
$config['per_page']     =   20; 
$view_data['view_data'] = $this->mymodel->getEmployees($config['per_page'], $this->uri->segment(3));

模型功能

function getEmployees($limit = 10 , $offset = 0)
{
    $select =   array(
                    'emp.code as emp_code',
                    'emp.fname as emp_fname',
                    'emp.lname as emp_lname',
                    'emp.faname as emp_faname',
                    'emp.awcc_phone as emp_phone',
                    'emp.awcc_email as emp_email',
                    'position as position',
                    'dep.title as department'
    );

    $this->db->select($select);
    $this->db->from('employees as emp');
    $this->db->join('departments as dep','dep.code=emp.department_code');
    $this->db->where('emp.status',1);
    $this->db->limit($offset , $limit);
    return $this->db->get()->result();
}

有关用法,请参阅this教程

© www.soinside.com 2019 - 2024. All rights reserved.