| Total Complexity | 0 |
| Total Lines | 23 |
| Duplicated Lines | 0 % |
| Changes | 0 | ||
| 1 | import django_filters |
||
| 2 | from django.db import models |
||
| 3 | |||
| 4 | from goals.models import Goal |
||
| 5 | |||
| 6 | |||
| 7 | class GoalsFilter(django_filters.rest_framework.FilterSet): |
||
| 8 | """Фильтр для целей |
||
| 9 | |||
| 10 | Реализует фильтрацию целей по дате дедлайна, категории, статусу, приоритету |
||
| 11 | """ |
||
| 12 | class Meta: |
||
| 13 | model = Goal |
||
| 14 | fields = { |
||
| 15 | 'due_date': ('lte', 'gte'), |
||
| 16 | 'category': ('exact', 'in'), |
||
| 17 | 'status': ('exact', 'in'), |
||
| 18 | 'priority': ('exact', 'in'), |
||
| 19 | } |
||
| 20 | |||
| 21 | filter_overrides = { |
||
| 22 | models.DateTimeField: {'filter_class': django_filters.IsoDateTimeFilter}, |
||
| 23 | } |
||
| 24 |