У объекта подкачки Django есть проблемы с Postgresql QuerySets - PullRequest
2 голосов
/ 02 февраля 2011

У меня есть некоторый код django, который отлично работает в базе данных SQLite или в базе данных MySQL, но он сталкивается с проблемами с Postgres, и меня бесит, что ни у кого раньше не было этой проблемы.Я думаю, это также может быть связано с тем, как пейджер оценивает наборы запросов.

В моем представлении:

def index(request, page=1):
    latest_posts = Post.objects.all().order_by('-pub_date')
    paginator = Paginator(latest_posts, 5)
    try:
        posts = paginator.page(page)
    except (EmptyPage, InvalidPage):
        posts = paginator.page(paginator.num_pages)
    return render_to_response('blog/index.html', {'posts' : posts})

А внутри шаблона:

{% for post in posts.object_list %}
    {# some rendering jazz #}
{% endfor %}

Это прекрасно работает с SQLite, но Postgres дает мне:

Caught TypeError while rendering: 'NoneType' object is not callable

Чтобы еще больше усложнить ситуацию, когда я переключаю вызов Queryset на:

latest_posts = Post.objects.all()

Все прекрасно работает.Я попытался перечитать документацию, но ничего не нашел, хотя и признаюсь, что на данный момент немного омрачен разочарованием.Чего мне не хватает?

Заранее спасибо.

1 Ответ

0 голосов
/ 02 февраля 2011

Это была ужасная ошибка с моей стороны, никто не виноват в Postgresql - проблема возникла из-за того, как один из моих пользовательских тегов шаблонов обрабатывал определенные записи в базе данных postgresql, которых не было в SQLite. Я все еще выясняю проблему, но этот вопрос недействителен.

...