(DRF) ValueError: Поле 'id' ожидало число, но получило ''. Невозможно передать id в url
Я пишу пользовательскую функцию для добавления избранного в модель Thread
. Функция должна ожидать передачу id в get_object_or_404
.
@csrf_exempt
def add_favourites(request, id, *args, **kwargs):
thread = get_object_or_404(Thread, id=id)
if request.method == 'POST':
if thread.liked.filter(username=request.user.username).exists():
thread.liked.remove(request.user.username)
else:
thread.liked.add(request.user.username)
и у меня есть url.py
вот так, чтобы получить идентификатор из axios url:
path('api/public/favourites/<int:id>/', add_favourites, name='add_favourites'),
Однако, когда я выполняю запрос axios post следующим образом:
axiosInstance.post(`api/public/favourites/4/`)
Он должен получать id = 4
, но он всегда возвращает ошибку:
(DRF) ValueError: Field 'id' expected a number but got ''.
У кого-нибудь есть идеи, что не так с моим кодом? Большое спасибо.
thread = get_object_or_404(Thread, pk=id)
Вы пробовали?