0
私のdjangoプロジェクトでは、私はdjangoフィルタとページネーションを使用しています。次のリンクをクリックして次のページに進むと、私の状態は失われます。私はhereからいくつかのアイデアを試しましたが、まだ何もトリックを行っていません。なぜこのようなことが起こるかについてのアイディアページングが状態を保持しないDjangoフィルタ
HTML
<div class="col-xs-4 clearfix text-center">
{% if relations.has_next %}
<div class="pull-right">
<a href="?page={{ relations.next_page_number }}{% if createdBy %}&createdBy={{ createdBy }}{% endif %}{% if project %}&project={{ project }}{% endif %}{% if createdBefore %}&createdBefore={{ createdBefore }}{% endif %}}">Next »</a>
</div>
{% endif %}
</div>
フィルタが適用されているビュー
def relations(request):
from annotations.filters import RelationSetFilter
qs = RelationSet.objects.all()
filtered = RelationSetFilter(request.GET, queryset=qs)
qs = filtered.qs
for r in qs:
print r.__dict__
paginator = Paginator(qs, 20)
page = request.GET.get('page')
try:
relations = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
relations = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
relations = paginator.page(paginator.num_pages)
context = {
'paginator': paginator,
'relations': relations,
'params': request.GET.urlencode(),
'filter': filtered,
return render(request, 'annotations/relations.html', context)
のURL
URLを:
/relations/?createdBy=&occursIn=&createdAfter=&createdBefore=&terminal_nodes=&project=1
のURL私はページ切り替え:
/relations/?page=2
私のデータは取得要求から来ており、データは検証されていません。 – Taylor