Pagination 07.24.2007

I’m a big fan of streaming blog posts — by which I mean the pagination of all of a blog’s posts so that they’re accessible via previous/next links. This is mainly because when reading a site, and catching up on old posts, I find it tremendously convenient to have the previous/next links rather than clicking each monthly archive individually.

The current archive system on, to put it bluntly, sucks ass: time was short, I was lazy1, and I was still getting my wrapped around everything Django. As a result, the entirety of the archives consists of a flat listing of every single post made.

Which is fine. Except it’s incredibly annoying to navigate if you want to read a stream of posts rather than each post separately. The user is forced to click each post title, and either put it in a new tab/window, or constantly use the back button. And also because there are no next post/previous post links in each post detail page, this is the only method possible.

I’ve been trying various method of pagination in my spare time — mostly using Django’s built in pagination classes — and stuff looks promising. Hopefully, I’ll have a decent archive system soon.

  1. Mostly, I was lazy. The archives page is quite possibly the simplest page you can make in Django, consisting solely of a single generic list template being passed a list of all entries via object.all. Sad, yes. Sublimely easy, yes.