Я пытаюсь создать форму в моем ListView, которая отправляет POST в ListView и фильтрует по атрибутам POSTed.
Это в проекте Django 2.1.
Я попытался передать аргументы self и request функции post, но я получаю исключение ниже
например,
def post(self, request):
приводит к исключению TypeError:
post() takes 1 positional argument but 2 were given
Если я пытаюсь устранить ошибку, удалив один из параметров, чтобы функция post () def post(self)
передавала только себя, я получаю следующее исключение TypeError:
post() takes 1 positional argument but 2 were given
Несмотря на то, что прошло только «я». Я попытался только передать запрос, и это приводит к тому же.
Много примеров онлайн шоу
def post(self, request, *args, **kwargs)
Это приводит к очевидным исключениям:
too many values to unpack (expected 2)
Удаление всех аргументов приводит к ошибке TypeError:
post() takes 0 positional arguments but 2 were given
class thing_dashboard (ListView):
'' 'Все заказы обработаны' ''
template_name = 'thing/orders_dashboard.html'
paginate_by = 25
def post(self, request):
queryset = Order.objects.all().order_by('-ordered_date')
rejected = self.request.POST.get('rejected')
if rejected == 'False':
queryset = Order.objects.filter(state='rejected')
return queryset
return queryset
def get_queryset(self):
queryset = Order.objects.all().order_by('-ordered_date')
return queryset
Я ожидаю, что в простом представлении на основе функций мне может понравиться ссылка на self.request.POST.get (), а затем обработать логику для возврата отфильтрованного набора запросов, которого я пытаюсь достичь.