首页 > 代码库 > Django1.7分页插件linaro-django-pagination的使用
Django1.7分页插件linaro-django-pagination的使用
安装
pip install linaro-django-pagination
项目加载setting.py
INSTALLED_APPS = ( # ... ‘linaro_django_pagination‘, ) MIDDLEWARE_CLASSES = ( # ... ‘linaro_django_pagination.middleware.PaginationMiddleware‘, ) TEMPLATE_CONTEXT_PROCESSORS = ( #在1.7中这个选项是默认取消掉了,貌似。我们如何在模板中和views中去加载是很重要的问题 ‘django.contrib.auth.context_processors.auth‘, ‘django.core.context_processors.debug‘, ‘django.core.context_processors.i18n‘, ‘django.core.context_processors.media‘, ‘django.core.context_processors.static‘, ‘django.core.context_processors.tz‘, ‘django.contrib.messages.context_processors.messages‘, ‘django.core.context_processors.request‘, )
views.py
@login_required def documents(request): project=d_category.objects.all() doc=docs.objects.all() return render_to_response(‘Documents/Documents.html‘,{‘project‘:project,‘doc‘:doc,‘user‘:request.user},context_instance=RequestContext(request))
这里是我的一段代码,从数据库去除文章,然后推送给前端。这里有一个非常重要的方法
context_instance=RequestContext(request)
如果我们没有使用分页功能,是不用加上这个方法的,为什么要加,就如我们前面所说的
setting.py中的TEMPLATE_CONTEXT_PROCESSORS里面我们加载了这些方法,要使用它们就必须用这个方法,为什么?
这些Processors都会被RequestContext顺序调用,往当前Context中放入一些预定义变量。例如‘django.core.context_processors.auth‘作用在于默认向模板传递user、messages、perms等变量,分别描述当前登录用户、当前登录用户的消息列表和当前登录用户的权限。最后一点,当使用render_to_response方法时,RequestContext应作为其第三个参数传入。这个是我在1.7中遇到的问题,如果你不使用,那么等待的是报错。
模板
{% autopaginate doc 5 %} {% for i in doc %} <tr> <td>{{ i.title }}</td> <td>{{ i.category }}</td> <td>{{ i.author }}</td> <td>{{ i.date }}</td> <td> <div class="limit_h spec_h"> {{ i.text }} </div> <a href="javascript:;" class="more_show">更多...</a> </td> <td><a href="http://www.mamicode.com/{% url ‘doc_modify‘ i.id %}"><button class="btn btn-success">修改<a href="http://www.mamicode.com/{% url ‘doc_delete‘ i.id %}"><button class="btn btn-danger">删除</td> </tr> {% endfor %} </table> <span class="badge">{% paginate %}</span>
结果:
这个效果是有点丑,希望有人能告诉我美化的方法,这个分页确实很丑。。
Django1.7分页插件linaro-django-pagination的使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。