Ich verwende django-filter. Ich habe Filterklasse:django übergeben zusätzliche Argumente zu filterset_class
class ProductFilter(django_filters.FilterSet):
def __init__(self, attribute=None, *args, **kwargs):
super(ProductFilter, self).__init__(*args, **kwargs)
#do stuff with attribute
und meine Ansichten:
from django_filters.views import FilterView
class ProductListView(FilterView):
model = Product
....
filterset_class = ProductFilter
Wie kann ich übergeben Argumente zu ProductFilter
__init__
Funktion? filterset_class = ProductFilter(attribute='width')
funktioniert nicht.
Ist Attributwert immer Breite? wenn es sich ändert, woher bekommst du diesen Wert? ex: wie URL-Parameter – Pavan
Nein, es ist nur ein Beispiel. Ich brauche diesen Wert von der cms-Seite, die in request.current_page ist. –