2017-09-11 18 views
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 &raquo;</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 

答えて

0

パラメータを渡していません(例: createdBy)はコンテキスト内で常にnullになります。

+0

私のデータは取得要求から来ており、データは検証されていません。 – Taylor

関連する問題