-2

Wir haben Probleme mit der Arbeit mit Django Rest Framework, wenn es um die Fehlerbehandlung geht. automatisch generierte Fehler sind JSON-Objekte, die wieFehler beim Verarbeiten von Nachrichten für Restfull API Serving SPA?

{"age": "this field must be an integer"} 

Kunden etwas benutzerfreundlicher aussieht brauchen:

Alter Feld muss eine ganze Zahl sein.

Jede Lösung, um damit umzugehen?

+0

Können Sie näher erläutern, wie und warum Ihre Benutzer rohe API-Fehler sehen? – Fian

+0

verwenden wir Benachrichtigungen auf der Vorderseite, die aussieht wie http://www.jqueryscript.net/images/jQuery-Bootstrap-Based-Toast-Notification-Plugin-toaster.jpg das ist nicht wirklich kompatibel mit der Art und Weise Django Rest Framework funktioniert – user2080105

+0

Dann Ich denke, es ist einfacher, kleinen Code für Ihre Toast-Benachrichtigungen zu schreiben, der DRF-Fehler in das bevorzugte Format konvertiert, als die DRF-Fehlerbehandlung neu zu schreiben. Aber wenn Sie dazu bereit sind: [Dokumente für Ausnahmen] (http://www.django-rest-framework.org/api-guide/exceptions/#custom-exception-handling) – Fian

Antwort

0

können Sie Ihre eigene error_codes.py Datei machen und Ihre eigenen lesbar Fehler setzen mit Ihrem eigenen Fehlercode zum Beispiel wie folgt ....

HTTP_MY_ERROR = {"error_desc": "your own readable error", 
        "error_code": 99} 

jetzt Sie Ihre Funktion als Antwort ...

schicken
return Response(error_codes.HTTP_MY_ERROR, status=status.HTTP_400_BAD_REQUEST) 
+0

Das war ein Beispiel zu erklären, wie ich Fehlermeldung angezeigt werden soll – user2080105

+0

Ich habe die Antwort entsprechend geändert ... schauen Sie ... @ user2080105 – amrit

+0

Ich denke, es wäre mehr trocken, wenn ich dies in einer höheren tun kann level, Es gibt viele eingebaute Fehlermeldungen. sie anzupassen, wäre besser als das Anpassen von Fehlern für jedes Feld, das schmerzhaft wäre – user2080105

Verwandte Themen