| 123456789101112131415161718192021222324252627282930313233 |
- from base.viewsets import BaseTable, BaseViewset
- from django_tables2 import Column, DateColumn
- import django_filters
- from . import models
- class DailyFeedItemLogEntryFilterSet(django_filters.FilterSet):
- from_date = django_filters.DateFilter(name='request_date', label='From', lookup_expr='gte')
- to_date = django_filters.DateFilter(name='request_date', label='To', lookup_expr='lte')
- category_name = django_filters.CharFilter(label='Category', lookup_expr='icontains')
- message_text = django_filters.CharFilter(label='Message', lookup_expr='icontains')
- class Meta:
- fields = ['from_date', 'to_date', 'category_name', 'message_text']
- model = models.DailyFeedItemLogEntry
- class DailyFeedItemLogEntryTable(BaseTable):
- request_date = DateColumn(verbose_name="Date")
- category_name = Column(verbose_name="Category")
- request_count = Column(verbose_name="Requests")
- class Meta(BaseTable.Meta):
- fields = ('request_date', 'category_name', 'message_text', 'request_count')
- order_by = ('-request_date', 'category_name')
- class DailyFeedItemLogEntryViewset(BaseViewset):
- filter_class = DailyFeedItemLogEntryFilterSet
- tables2_class = DailyFeedItemLogEntryTable
- exclude_views = ['create', 'detail', 'update', 'delete']
- def get_queryset(self, view):
- return models.DailyFeedItemLogEntry.objects.all()
|