Kohana中的分页
Kohana是源于CI的,所以掌握CI之后,对Kohana来说,都基本上是差不多的。以前照着CI的方法使用Kohana,没出过什么问题。这次写一个分页,看到了CodeIgniter 分页教程(Pagination)这篇文章,于是照着做,没有成功。看来Kohana和CI的分页稍微有些不一样了。打开Kohana的Pagination.php看了下,发现和CI的配置参数有些不一样了.主要是下面几行:
public $base_url = '';
public $directory = 'pagination';
public $style = 'classic';
public $uri_segment = 3;
public $items_per_page = 10;
public $current_page;
public $total_pages;
public $total_items;
参数都比较简单,我就不说了。于是,按照台下方法调用pagination。
$model=new Product_Model();
$config['uri_segment'] =4 ;
$config['total_items'] = $model->count();
$config['items_per_page'] = '5';
$this->load->library('pagination',$config);
$result=$model->getList($this->pagination->sql_limit())->result();
$view=$this->load->view("admin/product_list_view");
$view->proList=$result;
$view->render(true);
需要注意的是uri_segment要真写正确,才能生成相应的url。Konaha的分页增加了sql_offset()和sql_limit()两个方法。sql_offset()生成相应的偏移量,而sql_limit()可以生成LIMIT 5 OFFSET 15 这样的一小段,直接加到我们的sql语句后就好了,非常好用。在这里我的$model调用了一个getList的方法,传入了$this->pagination->sql_limit().
最后就是视图了,视图和CI没什么两样
<?echo $this->pagination->create_links() ?>
支持原创文章!顶了!加分加精!
页:
[1]