PagedFilteredTableView   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 15
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
c 0
b 0
f 0
dl 0
loc 15
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A get_context_data() 0 4 1
A get_queryset() 0 5 1
1
from django_tables2 import SingleTableView
2
from django_tables2.config import RequestConfig
3
4
5
class PagedFilteredTableView(SingleTableView):
6
    filter_class = None
7
    formhelper_class = None
8
    context_filter_name = 'filter'
9
10
    def get_queryset(self, **kwargs):
11
        qs = super(PagedFilteredTableView, self).get_queryset()
12
        self.filter = self.filter_class(self.request.GET, queryset=qs)
13
        self.filter.form.helper = self.formhelper_class()
14
        return self.filter.qs
15
16
    def get_context_data(self, **kwargs):
17
        context = super(PagedFilteredTableView, self).get_context_data()
18
        context[self.context_filter_name] = self.filter
19
        return context
20