Я хочу знать, как получить доступ к определенному объекту по определенному идентификатору, а затем обновить его. В настоящее время я получаю сообщение об ошибке «Метод 405. Не разрешен».
Возможно ли получить доступ к объекту через идентификатор, как упомянуто выше, или мне нужно подойти к проблеме по-другому?
Мой код выглядит следующим образом:
views.py
from rest_framework import status
from rest_framework.decorators import api_view
from rest_framework.response import Response
from home.models import example
from home.serializers import exampleSerializer
@api_view(['GET', ])
def exampleview(request):
try:
ex=example.objects.all()
except example.DoesNotExist:
return Response(status=status.HTTP_404_NOT_FOUND)
if request.method=="GET":
serializer=exampleSerializer(ex, many=True)
return Response(serializer.data)
@api_view(['PUT', ])
def exampleputview(request):
try:
ex1=example.objects.get(id=id)
except example.DoesNotExist:
return Response(status=status.HTTP_404_NOT_FOUND)
if request.method=="PUT":
serializer=exampleSerializer(ex1, data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
return Response(status=status.HTTP_404_NOT_FOUND)
urls.py
from django.contrib import admin
from django.conf.urls import url
from home import views
urlpatterns = [
url('admin/', admin.site.urls),
url('home/',views.exampleview),
url('home/<int:id>/',views.exampleputview),
]