首页 > 解决方案 > 对数组 Codeigniter 4 上的成员函数 paginate() 的错误调用

问题描述

我想将分页添加到用户列表中,但是在实施过程中发生了错误。我使用 Codeigniter 4 和使用查询生成器的地方,

但是当我检查时出现错误:Error Call to a member function paginate() on array

用户控制器:

    public function index()
        {
            $builder = $this->db->table('akun');
            $builder->where('created_by', session()->get('nama'));
            $query = new AkunModel();
            $query = $builder->get()->getResult();
            $data = [
                'query' => $query->paginate(10, 'query'),
                'pager' => $this->AkunModel->pager,
                'currentPage' => $currentPage,
            ];
            return view('user/index', $data);
        }

标签: phpcodeignitercodeigniter-4

解决方案


您需要在模型中设置表格,请参阅文档

protected $table = "akun";

https://codeigniter.com/user_guide/models/model.html#configuring-your-model

public function index()
    {
        $builder = new AkunModel();
        $builder->where('created_by', session()->get('nama'));
        $data = [
            'query' => $builder->paginate(10),
            'pager' => $builder->pager,
            'currentPage' => $currentPage,
        ];
        return view('user/index', $data);
    }

// 在视图中:

<?= $pager->links() ?> 

推荐阅读