2016-07-26 13 views
0

Diese Frage wurde bereits von anderen Nutzern gestellt und es wurden keine Antworten bereitgestellt. Effektiv ist das Ziel, Suchfunktionalität mit Djangos Twitter-style endloser Paginierung zu implementieren. Ein Benutzer ändert ein Schnittstellenfeld und die Endlos-Tabelle initialisiert sich unter Berücksichtigung neuer Benutzereingaben neu.Filterung mit Django endlos Paginierung

Ich habe eine Vorlage A, die die Hauptvorlage Vorlage B enthält, eingebettet ist, die für meinen endlosen Tisch als Behälter dient. Die Tabelle lädt zusätzlich Daten, wenn der Benutzer nach unten scrollt:

<select id = 'parameter' class="form-control input-sm"> 
    <!-- my options --> 
</select> 
<table> 
    <thead>...</thead> 
    <tbody> 
     {% include 'my_app/template_B.html' %} 
    </body> 
</table> 

Die Struktur der Vorlage B auf die Frage zu sein irrevelant scheint, so lassen Sie es mich weglassen.

Die Django Ansicht, die Vorlage A initialisiert:

def my_view(request,\ 
      parameter_id = None, 
      template='order_scheduler/template_A.html',\ 
      extra_context=None): 
if parameter_id is None: 
    # do smth 
else: 
    # do smth 
return render_to_response(template, 
          context, 
          context_instance=RequestContext(request)): 

die Frage: Wie kann ich neu initialisieren die endlose Tabelle in Vorlage B, wenn der Benutzer den Wert des Parameter Combobox modifiziert ohne Vorlage einer erfrischenden?

Antwort

1

könnten Sie eine Ansicht erstellen, nach dem Parameter template_B.html macht in POST übergeben, dann in Ihre Seite ein:

$(function() { 
     var parameter = $('#parameter'); 
     parameter.on('change', function() { 
      $.post("/your/viev/url", {'parameter': parameter.val()}, function(response) { 
       $('tbody').html(response); 
      }); 
     }); 
    });