Django не может ответить на запрос json-данных
Я создаю функцию устройства в файле views.py для возврата json-данных следующим образом.
views.py
def device(request):
responseData = {
'id': 4,
'name': 'Test Response',
'roles' : ['Admin','User']
}
return JsonResponse(responseData)
Я задаю url путь к views.device() в urls.py следующим образом.
urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('device/', views.device()),
]
Когда я сохраняю проект, он выдает такую ошибку. Как это исправить?
File "C:\Users\MAX\Django\test_project\test\test\urls.py", line 23, in <module>
path('device/', views.device()),
TypeError: device() missing 1 required positional argument: 'request'
Вы вызываете свою функцию device, когда ваши урлы загружаются без запроса.
Вашим урлам просто нужно знать, какую функцию вызывать.
Вместо path('device/', views.device()), должно быть path('device/', views.device),
https://docs.djangoproject.com/en/4.0/topics/http/urls/#example