- Python 2.6.2
- django-pagination 1.0.5
Вопрос: Как правильно заставить постраничной работу? Проблема в том, что {% paginate %}
не работает, но работает {% load pagination_tags %}
и {% autopaginate object_list 10 %}
! появилсяВ Django-постраничной постраничной не работает
Сообщение об ошибке, когда я добавляю {% paginate %}
в HTML страницу:
TemplateSyntaxError at /logging
Caught an exception while rendering: pagination/pagination.html
То, что я сделал:
Установите Джанго-пагинацию без каких-либо проблем. Когда я делаю в python
import pagination
, это хорошо работает.Добавлено в INSTALLED_APP разбиения на страницы в settings.py:
INSTALLED_APPS = ( # ..., 'разбиения на страницы', )
Добавлено в settings.py:
TEMPLATE_CONTEXT_PROCESSORS = ( "django.core.context_processors.auth", "django.core.context_processors.debug", "django.core.context_processors.i18n", "django.core.context_processors.media", "django.core.context_processors.request" )
также добавить в settings.py промежуточное программное обеспечение:
MIDDLEWARE_CLASSES = ( # ... ' pagination.middleware.PaginationMiddleware», )
Добавить вверх в views.py:
из django.template импорта RequestContext
И, наконец, добавить в мой HTML шаблон страницы строки:
{% нагрузки pagination_tags%} ... {% autopaginate item_list 50%} {% для пункта в item_list%} ... {% ENDFOR%} {% постраничной%}
Спасибо.
ДОБАВЛЕНО: Начало отчета об ошибке:
TemplateSyntaxError at /logging
Caught an exception while rendering: pagination/pagination.htmlRequest Method: GET
Request URL: http://host:8123/logging?portfolio_id=1
Exception Type: TemplateSyntaxError
Exception Value: Caught an exception while rendering: pagination/pagination.html
Exception Location: /usr/local/lib/python2.6/dist-packages/django/template/debug.py in render_node, line 81
Python Executable: /usr/bin/python
Python Version: 2.6.2
Python Path: ['/home/mosg/sources/django/apm', '/usr/local/lib/python2.6/dist-packages/django_pagination-1.0.5-py2.6.egg', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/dist-packages', '/var/lib/python-support/python2.6', '/var/lib/python-support/python2.6/gtk-2.0', '/usr/local/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages']
Server time: Thu, 17 Jun 2010 06:29:45 -0500
Template error
In template /home/mosg/sources/django/apm/templates/accounting/logging.html, error at line 93
Caught an exception while rendering: pagination/pagination.html
83 <td>{{ item.transaction_datetime }}</td>
84 <td>{{ item.src_account }}</td>
85 <td>{{ item.dst_account }}</td>
86 <td>{{ item.body }}</td>
87 <td>{{ item.estimated }}</td>
88 <!--
89 <td><a href="./admin/accounting/transaction/{{item.id}}/">edit</a></td>
90 -->
91 </tr>
92 {% endfor %}
93 {% paginate %}
94 </table>
95 {% else %}
96 <p>No transaction logs are available.</p>
97 {% endif %}
98 </div>
99
100
101 </div>
102
103 <br class="clear" />
ДОБАВЛЕННОЙ для stevejalim:
@login_required
def logging(request):
pid = request.GET.get('portfolio_id', 1)
item_list = TransactionsLogging.objects.filter(Q(portfolio_id=pid)).order_by('-datetime')
return render_to_response('accounting/logging.html', {'item_list': item_list, 'user': request.user,}, context_instance = RequestContext(request))
PS: требуется некоторые правки, потому что я не может стиль джанго-кода работать хорошо здесь :)
Вы определенно проходите в QuerySet, а не в списке или словаре того, что хотите разбивать на страницы? –
@stevejalim Я добавляю функцию каротажа в конец моего вопроса ... – mosg