0

ブログ投稿にはこのビュー機能があります。

def home(request):
    posts = Post.objects.all().order_by("-pub_date")
    paginator = Paginator(posts, 5)

    try: page = int(request.GET.get("page", 1))
    except ValueError: page = 1

    try: posts = paginator.page(page)
    except (InvalidPage, EmptyPage):
        posts = paginator.page(paginator.num_page)

    return render_to_response("home.html",
                            dict(posts=posts, user=request.user))

メインの urls.py ファイルには、次のものがあります。

urlpatterns = patterns('',
    url(r'^', 'blog.views.home', name='home'),
    url(r'^admin/', include(admin.site.urls)),
)

また、アプリ フォルダーの下に urls.py ファイルを作成しませんでした。

これは私の home.html ファイルにあります。

{% block footer %}

<ul class="pager">
{% if posts.object_list and posts.paginator.num_pages > 1 %}
  {% if posts.has_previous %}
  <li><a href="{{ posts.previous_page_number }}">Previous</a></li>
  {% endif %}
  {% if posts.has_next %}
  <li><a href="{{ posts.next_page_number }}">Next</a></li>
  {% endif %}
</ul>
{% endif %}

</div><!-- /.blog-main -->
{% endblock %}

この時点まで、ホームページ (home.html) はローカル サーバーで適切に表示されます。ただし、次のページのリンクをクリックすると、次のページに移動します

127.0.0.1:8000/2

と同じページを表示します。また、前のボタンが表示されていません。

質問: 何か間違ったことをしたことがありますか? また、URL ディスパッチャーでビューをページ 2 に適切に誘導するにはどうすればよいですか?

助けていただければ幸いです。ありがとうございました。

4

1 に答える 1