def test_filtering_ignores_lookup_type(self):
     qs = mock.Mock()
     value = mock.Mock(start=date(2015, 4, 7), stop=date(2015, 9, 6))
     f = DateFromToRangeFilter(lookup_type='gte')
     f.filter(qs, value)
     qs.filter.assert_called_once_with(
         None__range=(date(2015, 4, 7), date(2015, 9, 6)))
Esempio n. 2
0
 def test_filtering_ignores_lookup_expr(self):
     qs = mock.Mock()
     value = mock.Mock(start=date(2015, 4, 7), stop=date(2015, 9, 6))
     f = DateFromToRangeFilter(lookup_expr='gte')
     f.filter(qs, value)
     qs.filter.assert_called_once_with(
         None__range=(date(2015, 4, 7), date(2015, 9, 6)))
Esempio n. 3
0
 def test_filtering_range(self):
     qs = mock.Mock(spec=['filter'])
     value = mock.Mock(start=date(2015, 4, 7), stop=date(2015, 9, 6))
     f = DateFromToRangeFilter()
     f.filter(qs, value)
     qs.filter.assert_called_once_with(
         None__range=(date(2015, 4, 7), date(2015, 9, 6)))
 def test_filtering_range(self):
     qs = mock.Mock(spec=['filter'])
     value = mock.Mock(start=date(2015, 4, 7), stop=date(2015, 9, 6))
     f = DateFromToRangeFilter()
     f.filter(qs, value)
     qs.filter.assert_called_once_with(
         None__range=(date(2015, 4, 7), date(2015, 9, 6)))
Esempio n. 5
0
class PatientExternalTestFilter(filters.FilterSet):
    name = filters.CharFilter(field_name="name", lookup_expr="icontains")
    srf_id = filters.CharFilter(field_name="srf_id", lookup_expr="icontains")
    mobile_number = filters.CharFilter(field_name="mobile_number",
                                       lookup_expr="icontains")
    wards = MFilter(field_name="ward__id")
    districts = MFilter(field_name="district__id")
    local_bodies = MFilter(field_name="local_body__id")
    sample_collection_date = DateFromToRangeFilter(
        field_name="sample_collection_date")
    result_date = DateFromToRangeFilter(field_name="result_date")
    created_date = DateFromToRangeFilter(field_name="created_date")
class DestinationFilter(django_filters.FilterSet):
    description = django_filters.CharFilter(lookup_expr='icontains')
    price = RangeFilter()
    check_in_date = DateFromToRangeFilter()

    class Meta:
        model = Destination
        fields = ('check_in_date', 'price', 'description')
Esempio n. 7
0
class AdvertisementFilter(filters.FilterSet):
    """Фильтры для объявлений."""

    # TODO: задайте требуемые фильтры
    created_at = DateFromToRangeFilter()
    status = ChoiceFilter(choices=AdvertisementStatusChoices.choices)

    # creator =

    class Meta:
        model = Advertisement
        fields = ("status", "created_at", "creator")
Esempio n. 8
0
 def test_filtering_skipped_with_none_value(self):
     qs = mock.Mock(spec=['filter'])
     f = DateFromToRangeFilter()
     result = f.filter(qs, None)
     self.assertEqual(qs, result)
 def test_filtering_skipped_with_none_value(self):
     qs = mock.Mock(spec=['filter'])
     f = DateFromToRangeFilter()
     result = f.filter(qs, None)
     self.assertEqual(qs, result)
Esempio n. 10
0
 def test_default_field(self):
     f = DateFromToRangeFilter()
     field = f.field
     self.assertIsInstance(field, DateRangeField)
Esempio n. 11
0
class IzsekFilter(FilterSet):

    naslov = CharFilter(name='posnetek',
                        lookup_expr='naslov__icontains',
                        label="Naslov",
                        help_text="")
    vsebina = CharFilter(name='vsebina',
                         lookup_expr='icontains',
                         label="Vsebina",
                         help_text="")

    datum = DateFromToRangeFilter(name='posnetek__datum',
                                  widget=RangePickerWidget(),
                                  label="Datum",
                                  help_text="")

    oddaja = CharFilter(name='posnetek__oddaja',
                        widget=ListSelect2(url='oddaja-url'),
                        label="Oddaja",
                        help_text="")
    tip_oddaje = CharFilter(lookup_expr='posnetek__oddaja__tip',
                            widget=ListSelect2(url='tip-url'),
                            label="Tip oddaje",
                            help_text="")
    program = CharFilter(lookup_expr='posnetek__oddaja__program',
                         widget=ListSelect2(url='program-url'),
                         label="S programa",
                         help_text="")

    o = OrderingFilter(fields=(
        ('posnetek__datum', 'datum'),
        ('posnetek__dolzina', 'dolzina'),
    ),
                       field_labels={
                           'datum': 'Datum',
                           'dolzina': 'Dolzina',
                       })

    class Meta:
        model = Izsek
        fields = {}
        order_by_field = '-posnetek__datum'

    def __init__(self, *args, **kwargs):
        super(IzsekFilter, self).__init__(*args, **kwargs)

        #ugh
        if self.data == {}:
            self.queryset = Posnetek.objects.all().order_by("-datum")

    @property
    def qs(self):
        qs = super(IzsekFilter, self).qs

        if hasattr(self.form, 'cleaned_data'):

            value = self.form.cleaned_data.get('vsebina', None)

            #dovolj dobro bo
            if value:
                qs = qs.extra(
                    select={
                        'snippet':
                        "ts_headline('simple', \"vsebina\", plainto_tsquery(%s), 'StartSel=<span> , StopSel= </span>,MaxFragments=0,HighlightAll=TRUE')"
                    },
                    select_params=[value, "style='background:lightblue;'"],
                )
        return qs