forked from rc/aircox
use django filters + search filter; still need adapts sub-page list views
This commit is contained in:
26
aircox/filters.py
Normal file
26
aircox/filters.py
Normal file
@ -0,0 +1,26 @@
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
import django_filters as filters
|
||||
|
||||
from .models import Page, Episode
|
||||
|
||||
|
||||
class PageFilters(filters.FilterSet):
|
||||
q = filters.CharFilter(method='search_filter', label=_('Search'))
|
||||
|
||||
class Meta:
|
||||
model = Page
|
||||
fields = {
|
||||
'category__id': ['in'],
|
||||
'pub_date': ['exact', 'gte', 'lte'],
|
||||
}
|
||||
|
||||
def search_filter(self, queryset, name, value):
|
||||
return queryset.search(value)
|
||||
|
||||
|
||||
class EpisodeFilters(PageFilters):
|
||||
class Meta:
|
||||
model = Episode
|
||||
fields = {
|
||||
}
|
||||
|
Reference in New Issue
Block a user