Ich las in einem Beitrag, dass es ideal ist, dass es ein guter Standard ist, eine Location-Header, verweist auf die URL der neuen Ressource (neu erstellt über POST). Mein Problem ist, ich weiß nicht, wie ich es einbeziehen soll.Fügen Sie einen Speicherort Kopfzeile in Django Rest Framework
Ich verwende eine klassenbasierte Ansichten, die die APIView und meinen Code in der Ansicht verwenden ist:
class ListArtists(APIView):
serializer_class = ArtistSerializer
def get(self, request, format=None):
_array = Artist.objects.filter()
serializer = self.serializer_class(_array, many=True)
if serializer.data:
_status = status.HTTP_200_OK
else:
_status = status.HTTP_204_NO_CONTENT
return Response(standardResponse(data=serializer.data), status=_status)
def post(self, request, format=None):
serializer = self.serializer_class(data=request.data)
if serializer.is_valid():
serializer.save()
return Response(standardResponse(data=serializer.data), status=status.HTTP_201_CREATED)
else:
return Response(standardResponse(errors=serializer.errors))
artist = ListArtists.as_view()
urls.py
from django.conf.urls import url, include
from store import views
urlpatterns = [
url(r'^artists/', views.artist, name='artists-list'),
]
P. S.
Jedes Mal, wenn ich eine Anfrage mit meinem erweiterte REST-Client werfen dies die Antwort ist, dass ich wirklich:
Date: Sat, 23 Jul 2016 10:54:23 GMT
Server: WSGIServer/0.1 Python/2.7.10
Vary: Accept, Cookie
X-Frame-Options: SAMEORIGIN
Content-Type: application/json
Allow: GET, POST, HEAD, OPTIONS
Sie können hinzufügen [Header zum Antwortobjekt] (https://docs.djangoproject.com/en/1.9/ref/request-response/#setting-header-fields), bevor es zurückgegeben wird. – solarissmoke
Könnten Sie bitte einen Code angeben .. –