master
-Zweig des Django-REST-Frameworks besteht.Schritt 1 . Wenn Daten an apiview gesendet werden, drucken Sie das POST-Abfragedikt.
@api_view(['GET', 'POST'])
def snippet_list(Anfrage):
if request.method == 'POST':
aus pprint importiere pprint als pp
pp(request.data)
pp(Anfrage.POST)
serializer = SnippetSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
Antwort zurückgeben (serializer.data, status=status.HTTP_201_CREATED)
Antwort zurückgeben (serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Schritt 2 . Poste '{"code": "print 123"}' von der durchsuchbaren API zu snippet_list
apiview.
Ergebnis beider pprint : {u'code': u'print 12dgdf3'}
<QueryDict: {}>
Ergebnis beider pprint: {u'code': u'print 12dgdf3'}
{u'code': u'print 12dgdf3'}
mybad .. nur Formulardaten sind in request.POST verfügbar, ich bin davon ausgegangen, dass alle Daten, die über Http POST gesendet werden, in request.POST sind. Schließe dieses Problem, tnx
mybad .. nur Formulardaten sind in request.POST verfügbar
Richtig, ja. Verwenden Sie request.data
.
Falls es jemanden interessiert, wo die offizielle Antwort zu finden ist:
https://www.django-rest-framework.org/tutorial/2-requests-and-responses/#request-objects
Ich verstehe immer noch nicht, warum POST
leer ist. :(
Irgendein Tutorial oder Link?
Hilfreichster Kommentar
Richtig, ja. Verwenden Sie
request.data
.