仿 Django Paginator 扩展 CI 分页类
weblog 链接地址:仿 Django Paginator 扩展 CI 分页类注意:以下内容在已测试的情况下仅适用于 Codeigniter 2.10 版本
一直觉得 Django 分页很方便视图的定制以及 GET 方式的检索,只把分页后的数据和分页相关的数据输出到模板,比如是否有上一页/下一页,页码范围,当前页等,所以在此以扩展 CI 分页类来实现类似功能,先看一副截图吧(觉得图片小可以在新标签里打开图片):
使用方法(Controller):
// 载入分页类
$this->load->library('pagination');
$config['total_rows'] = $this->post->get_content_list('post', 'published', NULL, NULL);
$config['cur_page'] = $page;
$config['per_page'] = 10;
// 依据配置初始化分页类
$this->pagination->initialize($config);
$pagery = $this->pagination->create_links();
$offset = $this->pagination->offset;
$per_page = $this->pagination->per_page;
// 根据每页条数和位置取得分页后的内容
$posts = $this->post->get_content_list('post', 'published', $per_page, $offset);
$this->_data['posts'] = $posts;
$this->_data['pagery'] = $pagery;
$this->load->view('all_posts', $this->_data);
使用方法(View):
<?php if($pagery): ?>
<div class="pagination">
<ul>
<?php if($pagery['has_previous']): ?>
<li class="prev"><a href="<?php echo site_url('admin/posts/?page=' . ($pagery['page'] - 1) . '&status=' . $status . '&mid=' . $mid . '&q=' . $q); ?>">上一页</a></li>
<?php else: ?>
<li class="prev disabled"><a href="javascript:void(0)">上一页</a></li>
<?php endif; ?>
<?php foreach($pagery['page_range'] as $item):?>
<?php if($pagery['page'] == $item): ?>
<li class="active"><a><?php echo $item; ?></a></li>
<?php elseif($item == '…'): ?>
<li class="disabled"><a href="#"><?php echo $item; ?></a></li>
<?php else: ?>
<li><a href="<?php echo site_url('admin/posts/?page=' . $item . '&status=' . $status . '&mid=' . $mid . '&q=' . $q); ?>"><?php echo $item; ?></a></li>
<?php endif; ?>
<?php endforeach;?>
<?php if($pagery['has_next']): ?>
<li class="next"><a href="<?php echo site_url('admin/posts/?page=' . ($pagery['page'] + 1) . '&status=' . $status . '&mid=' . $mid . '&q=' . $q); ?>">下一页</a></li>
<?php else: ?>
<li class="next disabled"><a href="javascript:void(0)">下一页</a></li>
<?php endif; ?>
</ul>
</div>
<?php endif; ?>
可以根据自己的需要在视图里定制分页呈现的样式,比如这样:
感谢楼主的分享啊!!!!! 谢谢分享{:1_1:} 感谢楼主分享。 感谢楼主的分享,太棒了,正需要这个!{:soso_e179:}{:soso_e181:} 看不懂啊 感谢楼主分享,另外。。。楼主这个管理界面很漂亮,不知是否方便分享或者给指条道儿?:lol o熊小猫o 发表于 2012-3-19 13:06 static/image/common/back.gif
感谢楼主分享,另外。。。楼主这个管理界面很漂亮,不知是否方便分享或者给指条道儿? ...
http://twitter.github.com/bootstrap/ huboo82 发表于 2012-3-19 15:40 static/image/common/back.gif
http://twitter.github.com/bootstrap/
感谢楼主指点:$ 少了全部页数啊..... 现在找各种论坛,各种样式。没有简单点的 包括全部页数的?
页:
[1]
2