예제 #1
0
    def test_querystring(self):
        order = order_by(allowed=["priority", "date"])
        self.assertEqual(order.for_link("priority"), "?ordering=-priority")
        self.assertEqual(order.for_link("date"), "?ordering=-date")

        order = order_by(ordering=["-date"], allowed=["priority", "date"])
        self.assertEqual(order.for_link("priority"), "?ordering=-priority&ordering=-date")
        self.assertEqual(order.for_link("date"), "?ordering=date")

        order = order_by(ordering=["-priority", "date"], allowed=["priority", "date"])
        self.assertEqual(order.for_link("priority"), "?ordering=priority&ordering=date")
        self.assertEqual(order.for_link("date"), "?ordering=-date&ordering=-priority")
예제 #2
0
    def get_context_data(self, **kwargs):
        context = super(RequestsListView, self).get_context_data(**kwargs)

        get = dict(self.request.GET)
        self.order = order_by(get.get('ordering', []), ['priority'])
        context['order'] = self.order

        queryset = context['object_list']
        if self.order.ordering:
            queryset = queryset.order_by(*self.order.ordering)
        queryset = queryset[:10]

        context['object_list'] = queryset
        context['formset'] = self.formset_class(queryset=queryset)
        return context
예제 #3
0
 def test_invert(self):
     order = order_by()
     self.assertEqual(order.invert("priority"), "-priority")
     self.assertEqual(order.invert("-created"), "created")
     self.assertNotEqual(order.invert("url"), "url")