请教:如何针对不同分类取文章的列表和分页?
大家好,我在做一个文章管理程序时遇到了这样的问题,自己想了许久不得解法,希望大家能帮忙。我现在的目的是想针对不同的文章分类,去取出分类下的文章列表,并且是带分页的列表。
但我用CI的分页类只能实现对整个文章表进行分页,郁闷,希望大家帮忙,给出解法。 你是不是想从数据库里取一部分文章?而现在是取了所有的文章? 是的,首先是通过GET传递分类的ID,然后在根据分类ID取分类下的文章和分页 如果分类ID是必须有的,可以放到分页 URL 中,然后传给模型,不就可以了? 我明白这个意思,但不知道怎么去操作了。 http://codeigniter.org.cn/forums/thread-17-1-2.html
根据这篇文章的例子,把
$config['base_url'] = site_url('books/index');
改成
$config['base_url'] = site_url('books/index/分类ID');
把
$config['total_rows'] = $this->db->count_all('christian_books');
改成
$config['total_rows'] = $this->books_model->get_books_count('christian_books', $this->uri->segment(3));
// get_books_count 要自己编写,就是取某个分类ID总数的方法
把
$config['uri_segment'] = 3;
改成
$config['uri_segment'] = 4;
把
$data['results'] = $this->books_model->get_books($config['per_page'], $this->uri->segment(3));
改成
$data['results'] = $this->books_model->get_books($this->uri->segment(3), $config['per_page'], $this->uri->segment(4));
// get_books 也要自己重写,第一个参数为分类ID,其他和例子中一样。 我试试去, 谢谢咯。 收藏掉慢慢看。慢慢研究。 如果是一个查询操作呢,比如like操作,那么模型内增加一个单独获取查询结果数量的方法岂不是每次都要执行两个sql查询语句了啊? 这个方法不错,不过条件多了的话,或许会麻烦些。