1

ビューは次のとおりです。

def search(request, template_name='search/search.html'):
    filters = {}
    status = None
    query = request.GET.get('q')
    form = FilterForm(request.GET or None)
    sqs = SearchQuerySet().models(Tutor).order_by('-overall_rating')
    paginator = Paginator(sqs, 10)
    page = request.GET.get('page')

    try:
        results = paginator.page(page)
    except PageNotAnInteger:
        results = paginator.page(1)
    except EmptyPage:
        results = paginator.page(paginator.num_pages)

    context = {
        'results': results,
        'form':    form,
    }

    return render(request, template_name, context)

これで、ipdb の sqs は次のように表示されます。

[<SearchResult: tutoring.tutor (pk=u'2')>, <SearchResult: tutoring.tutor (pk=u'1')>]

そのカウントは 2 です。ただし、ページネーションの結果は次のように表示されます。

paginator = Paginator(sqs, 10)
results = paginator.page(1)
results.object_list
[<SearchResult: tutoring.tutor (pk=u'2')>, None]

2 番目の結果インスタンスは None に変更されます。私はdjango 1.4.1とgithubの最新のヘイスタックを使用しています。何が問題なのですか?

4

0 に答える 0