Я изучаю django и пытаюсь создать свой собственный класс в файле views.py
Этот класс, который я бы использовал, должен иметь метод, один для классического рендеринга HTML, а другой для ответа json
мой класс в views.py
class myListView():
context = {}
def __init__(self, request):
request = request
context['PageTitle'] = 'Contacts'
context['people'] = People.objects.all()
def htmlRender(self, *args, **kwargs):
context['children_template'] = 'people/list.html'
return render(request,'base.html',context)
def jsonRender(self, *args, **kwargs):
return HttpResponse(json.dumps(self.context['people']), content_type="application/json")
my urls.py
path('list', login_required(myListView.htmlRender()), name='list'),
path('list/json', login_required(myListView.jsonRender()), name='list'),
Вот ошибка, отправленная отладчиком:
TypeError: htmlRender() missing 1 required positional argument: 'self'
Понятия не имею, как решить эту проблему, может быть, я мечтаю использовать пользовательский класс в поле зрения?
Thanks'you