Django get_total_topup () отсутствует 1 обязательный позиционный аргумент: «запрос» - PullRequest
0 голосов
/ 23 июня 2019
class IndexAjaxView(View):
   def get(self, request): 
      param = request.GET.get('param')

      if param == 'get_total_topup':
        return self.get_total_topup()

      return JSONResponse({}, status=404)

   def get_total_topup(self, request):
      return JSONResponse({
        'value': 'Rp.{:,.0f},-'.format(
            TopUp.objects.filter(owned_by=request.user).aggregate(Sum('amount'))['amount__sum']
       )
      })

кто-нибудь может мне помочь?Я хочу получить данные через ajax, но ответ - 500 с сообщением get_total_topup (), пропущенным 1 обязательный позиционный аргумент: 'request'

Ответы [ 2 ]

1 голос
/ 23 июня 2019

Ваш вызов в return self.get_total_topup() не имеет аргументов, но ваше определение def get_total_topup(self, request) требует его.Попробуйте return self.get_total_topup(request).

class IndexAjaxView(View):
   def get(self, request): 
      param = request.GET.get('param')

      if param == 'get_total_topup':
        return self.get_total_topup(request) # <--- just change this

      return JSONResponse({}, status=404)

   def get_total_topup(self, request):
      return JSONResponse({
        'value': 'Rp.{:,.0f},-'.format(
            TopUp.objects.filter(owned_by=request.user).aggregate(Sum('amount'))['amount__sum']
       )
      })
0 голосов
/ 23 июня 2019

В вызове метода отсутствует один позиционный аргумент.

return self.get_total_topup()

Исправить это до

return self.get_total_topup(request)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...