Paginator

実は Django の Paginator が GQL Query そのまま渡しても使えます。
Paginator は 0.96.1 と 0.97pre では別物になっているます、
ちなみに 0.97pre 版しか確認してません。

http://pppaster.appspot.com/21/

from django.core.paginator import QuerySetPaginator, InvalidPage

from google.appengine.ext import db

from monologista import settings
from monologista.main.models import Monology

def get_post_list_all(num=100):
    q = Monology.all().filter("activate =", True).order("-posted_at").fetch(limit=num)
    return QuerySetPaginator(q, settings.POST_PER_PAGE, allow_empty_first_page=True)