common api
This commit is contained in:
34
events/filters.py
Normal file
34
events/filters.py
Normal file
@@ -0,0 +1,34 @@
|
||||
import django_filters
|
||||
from .models import Event, EventParticipant, MethodicalFile
|
||||
|
||||
class EventFilter(django_filters.FilterSet):
|
||||
name = django_filters.CharFilter(lookup_expr="icontains")
|
||||
location = django_filters.CharFilter(lookup_expr="icontains")
|
||||
date_after = django_filters.DateFilter(field_name="date", lookup_expr="gte")
|
||||
date_before = django_filters.DateFilter(field_name="date", lookup_expr="lte")
|
||||
|
||||
class Meta:
|
||||
model = Event
|
||||
fields = ["name", "location", "date_after", "date_before"]
|
||||
|
||||
|
||||
class EventParticipantFilter(django_filters.FilterSet):
|
||||
student_name = django_filters.CharFilter(
|
||||
field_name="student__account__first_name", lookup_expr="icontains"
|
||||
)
|
||||
event_name = django_filters.CharFilter(field_name="event__name", lookup_expr="icontains")
|
||||
|
||||
class Meta:
|
||||
model = EventParticipant
|
||||
fields = ["student_name", "event_name", "points"]
|
||||
|
||||
|
||||
class MethodicalFileFilter(django_filters.FilterSet):
|
||||
name = django_filters.CharFilter(lookup_expr="icontains")
|
||||
specialty_name = django_filters.CharFilter(
|
||||
field_name="specialty__name", lookup_expr="icontains"
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = MethodicalFile
|
||||
fields = ["name", "specialty_name", "upload_date"]
|
||||
Reference in New Issue
Block a user