2016-06-22 6 views
0

Ich arbeite an einem Django-Projekt, bei dem Elemente auf der Hauptseite angezeigt werden. Ich versuche, auf dieser Seite einen Filter zu finden, so dass, wenn ich einige Checkboxen ankreuze, die Ergebnisse gefiltert werden, um sie auf den Items anzuzeigen, die diesen Attributen entsprechen. Leider weiß ich nicht, wie ich das machen soll.Filtern von Ergebnissen auf Seite mit Django und Ajax

Ich denke, ich muss Ajax dafür verwenden, könnte aber falsch sein und fragte mich, wie ich meine Anwendung so einrichten könnte, dass es die Ergebnisse auf der Seite filtert. Ich verwende Django 1.7 und Python 2.7

Edit:

Entschuldigt meine Anforderungen, auf meinen Seiten Indexseite vage habe ich die Artikel aufgelistet, die jeweils Elemente besitzt Attribute wie Kategorie, die Ich mag würde filtern durch. Ich habe für diesen Teil keinen Code geschrieben, weil ich nicht weiß, wie ich damit anfangen soll und leider nichts online finden konnte, um zu helfen. Ich denke, dass es eine einfache Möglichkeit geben muss, meine Indexseite so zu aktualisieren, dass nur Elemente angezeigt werden, die mit den überprüften Kästchen übereinstimmen, und ich wäre Ihnen dankbar, wenn Sie Hilfe benötigen.

Antwort

0

Sie sind in Ihrer Frage ein wenig vage, aber wahrscheinlich suchen Sie nach etwas wie django-filter zum automatischen Filtern von Listen.

Filter werden auf ähnliche Weise definiert, wie Sie Formulare oder Modelle definieren, so dass sie leicht zu erlernen sind. Beispiel

import django_filters 

class ProductFilter(django_filters.FilterSet): 
    class Meta: 
     model = Product 
     fields = {'name': ['exact', 'icontains'], 
        'price': ['exact', 'gte', 'lte'], 
       } 

Kein AJAX erforderlich.

Aber wenn Sie AJAX oder D.R.F. verwenden, gibt es ein Add-on für Django Filter, django-rest-framework-filters, also funktioniert es gut über REST mit dem D.R.F.

+0

Vielen Dank, ich werde es mir ansehen. Kann ich damit die Seite automatisch aktualisieren? – Gary

Verwandte Themen