Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 22, 2014 14:33:50

ajib6ept
От: От: От: От: От: От: От: От:
Зарегистрирован: 2013-08-04
Сообщения: 297
Репутация: +  26  -
Профиль   Отправить e-mail  

ListView и Paginator

class ListSites(ListView):
    model = Sites
    context_object_name = 'sites'
    template_name = 'sites/list_sites.html'
    paginate_by = 18
    def get_context_data(self, **kwargs):
        context = super(ListSites, self).get_context_data(**kwargs)
        if self.request.session.get("order"):
            context['sites'] = Sites.objects.all().order_by(self.request.session["order"])
        return context

Если идет сортировка, то пагинатор не корректно работает: на первой странице отображает всю таблицу. Как можно поправить?



_________________________
Python golden rule: Do not PEP 8 unto others; only PEP 8 thy self.
Don't let PEP 8 make you insanely intolerant of other people's code.

Отредактировано ajib6ept (Ноя. 22, 2014 14:34:03)

Офлайн

#2 Ноя. 22, 2014 14:42:01

ajib6ept
От: От: От: От: От: От: От: От:
Зарегистрирован: 2013-08-04
Сообщения: 297
Репутация: +  26  -
Профиль   Отправить e-mail  

ListView и Paginator

Поторопился с вопросом, надо было не контекст расширять, а использовать get_queryset. С ним все получилось.



_________________________
Python golden rule: Do not PEP 8 unto others; only PEP 8 thy self.
Don't let PEP 8 make you insanely intolerant of other people's code.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version