完成分页功能

sh_branch
车亮亮 9 years ago
parent 1869993753
commit 28b7a20c11

@ -155,6 +155,9 @@ SIDEBAR_ARTICLE_COUNT = 10
# 侧边栏评论数目
SIDEBAR_COMMENT_COUNT = 5
# 分页
PAGINATE_BY = 10
# cache setting
"""
CACHES = {
@ -167,8 +170,8 @@ CACHES = {
OAHUTH = {
'sina': {
'appkey':'3161614143',
'appsecret':'ee17c099317f872eeddb25204ea46721',
'callbackurl':'http://blog.lylinux.org/oauth/weibo'
'appkey': '3161614143',
'appsecret': 'ee17c099317f872eeddb25204ea46721',
'callbackurl': 'http://blog.lylinux.org/oauth/weibo'
}
}

@ -21,7 +21,7 @@ urlpatterns = [
# url(r'^$', cache_page(60 * 15)(views.IndexView.as_view()), name='index'),
url(r'^$', views.IndexView.as_view(), name='index'),
# url(r'^article/(?P<article_id>\d+)$', views.ArticleDetailView.as_view(), name='detail'),
url(r'^page/(?P<page>\d+)$', views.IndexView.as_view(), name='index_page'),
url(r'(?P<year>\d+)/(?P<month>\d+)/(?P<day>\d+)/(?P<article_id>\d+)-(?P<slug>\S+).html$',
views.ArticleDetailView.as_view(),
name='detail'),

@ -7,12 +7,13 @@ from django.views.generic import UpdateView
from django.views.generic.edit import CreateView, FormView
from django.views.generic.dates import YearArchiveView, MonthArchiveView
from blog.models import Article, Category, Tag
from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage
from django.core.exceptions import ObjectDoesNotExist
from comments.forms import CommentForm
from django.conf import settings
from django import forms
class ArticleListView(ListView):
# template_name属性用于指定使用哪个模板进行渲染
template_name = 'blog/index.html'
@ -22,10 +23,13 @@ class ArticleListView(ListView):
# 页面类型,分类目录或标签列表等
page_type = ''
paginate_by = settings.PAGINATE_BY
page_kwarg = 'page'
class IndexView(ArticleListView):
def get_queryset(self):
article_list = Article.objects.filter(status='p')
# for article in article_list:
@ -59,7 +63,6 @@ class ArticleDetailView(DetailView):
comment_form = CommentForm()
if self.request.user.is_authenticated():
comment_form.fields.update({
'email': forms.CharField(widget=forms.HiddenInput()),
'name': forms.CharField(widget=forms.HiddenInput()),

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

@ -14,15 +14,23 @@
{% for article in article_list %}
{% load_article_detail article True %}
{% endfor %}
{% if is_paginated %}
<nav id="nav-below" class="navigation" role="navigation">
<h3 class="assistive-text">文章导航</h3>
{% if page_obj.has_next %}
<div class="nav-previous"><a
href="{{ SITE_BASE_URL }}page/{{ page_obj.next_page_number }}"><span
class="meta-nav">&larr;</span> 早期文章</a></div>
{% endif %}
{% if page_obj.has_previous %}
<div class="nav-next"><a href="{{ SITE_BASE_URL }}page/{{ page_obj.previous_page_number }}">较新文章
<span
class="meta-nav"></span></a>
</div>
{% endif %}
</nav><!-- .navigation -->
<nav id="nav-below" class="navigation" role="navigation">
<h3 class="assistive-text">文章导航</h3>
<div class="nav-previous"><a href="https://www.lylinux.org/page/2"><span
class="meta-nav">&larr;</span> 早期文章</a></div>
<div class="nav-next"></div>
</nav><!-- .navigation -->
{% endif %}
</div><!-- #content -->
</div><!-- #primary -->
{% endblock %}

Loading…
Cancel
Save