class ArticleFilter(django_filters.FilterSet):
class Meta:
model = Article
fields = [...]
@property
def qs(self):
parent = super(ArticleFilter, self).qs
author = getattr(self.request, 'user', None)
return parent.filter(is_published=True) \
| parent.filter(author=author)
from django_tables2 import SingleTableView
from django_tables2.config import RequestConfig
class PagedFilteredTableView(SingleTableView):
filter_class = None
formhelper_class = None
context_filter_name = 'filter'
def get_queryset(self, **kwargs):
qs = super(PagedFilteredTableView, self).get_queryset()
self.filter = self.filter_class(self.request.GET, queryset=qs, request=self.request)
self.filter.form.helper = self.formhelper_class()
return self.filter.qs
def get_context_data(self, **kwargs):
context = super(PagedFilteredTableView, self).get_context_data()
context[self.context_filter_name] = self.filter
return context
class TransationsListFilter(django_filters.FilterSet):
transaction_date = DateFromToRangeFilter(widget=RangeWidget(attrs {'placeholder': 'DD/MM/YYYY'}))
class Meta:
model = Transations
fields = ['transaction_date']
@property
def qs(self):
return super().qs.filter(user=self.request.user)
listUpdates.append( (descr, id, url ) )
cursor.executemany("""
UPDATE table1
SET description = %s
WHERE id = %s
AND url = %s
""", listUpdates)
первой же ссылкой будет Библиотека для работы, а второй ссылкой примеры ее использования.