Оценка Джанго Пагинатора с помощью GAE - PullRequest
0 голосов
/ 14 июля 2011

Является ли хорошей идеей добавить django paginator в наш проект google app engine, чтобы включить нумерацию страниц? Это выглядит заманчиво, так как в противном случае я не могу реализовать нумерацию страниц, хотя могут быть и скрытые недостатки. Например, класс PageQuery, который мы пробовали вчера, не мог создать страницу SearchableModel (!), Но django paginator может. Есть ли лучшая причина использовать вместо этого курсоры? Теперь я на самом деле могу простым способом создать страницу набора данных с помощью переменной страницы, но я делаю это с помощью класса django paginator

from paginator import Paginator, InvalidPage, EmptyPage

в этом случае следующий код фактически выполняет страничку набора данных:

        articles = Articles.all()
        paginator = Paginator(articles,PAGESIZE)
        articles = paginator.page(page)

, поэтому я нахожу это решение заманчивым, так как оно настолько легко и читаемо, и надеюсь, что вы можете оставить комментарий. Файл Django, который я добавил http://code.djangoproject.com/browser/django/trunk/django/core/paginator.py Я все еще могу использовать свой запрос IN, и код очень удобен для чтения, просто добавив django paginator. Я делаю ошибку, не используя курсоры, и каковы недостатки в моем случае? Если вы хотите поближе взглянуть на мои детали реализации, я разместил их здесь Как разместить страницу на наборе данных Спасибо

-

1 Ответ

2 голосов
/ 14 июля 2011

Мой друг использует его и имеет проблемы с производительностью, я думаю, что он использует лимит и смещение, что не очень подходит для AppEngine.Правильное решение будет использовать paginator, который использует курсоры.

...