1

私のcategory.htmlページは現在このようになっており、ページネーションが機能していません。エラーも表示されません。

{% autopaginate category.entries.all 5 %}   #line 17
{% for entry in category.entries.all %}
<li><a href="{{ entry.get_absolute_url }}">{{ entry.name }}</a></li>

一方、catehory.html の 17 行目を次のように変更すると、

{% autopaginate category.entries.all 5 %}   #line 17

巨大なテンプレート構文エラーが発生します。http://pastebin.com/E4zfCt0v

別のページでもdjango-paginationを使用してページネーションを使用していますが、そこでは正常に機能しています。おそらくエントリを正しく取得していないと思いますが、その場合は {% for entry in category.entries.all %} も機能しないはずで、正常に機能しています。すべてのエントリを取得していますが、この特定のページでページ分割されていません。

4

1 に答える 1

2

autopaginateタグは、変数category.entries.allを有効なオブジェクト(この場合はクエリセット)に解決できないようです。動作するはずのクイックフィックスは、既に解決されたクエリセットを保持するcategory_entriesという名前のビュー変数から渡す(または他の名前を付ける)ことです。

category_entries = category.entries.all()

テンプレートコンテキストにcategory_entriesを追加し、category.entries.allをテンプレートのcategory_entriesに変更することを忘れないでください。

于 2011-01-19T15:26:39.680 に答える