Python: Die Fehlermeldung einer Ausnahme erhalten
In python 2.6.6, wie kann ich einen Screenshot des Fehlers Meldung einer Ausnahme.
IE:
response_dict = {} # contains info to response under a django view.
try:
plan.save()
response_dict.update({'plan_id': plan.id})
except IntegrityError, e: #contains my own custom exception raising with custom messages.
response_dict.update({'error': e})
return HttpResponse(json.dumps(response_dict), mimetype="application/json")
Diese scheint nicht zu arbeiten. Ich:
IntegrityError('Conflicts are not allowed.',) is not JSON serializable
InformationsquelleAutor der Frage Hellnar | 2010-12-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Führen Sie es durch
str()
ersten.Beachten Sie auch, dass bestimmte exception-Klassen haben bestimmte Attribute, geben Sie den genauen Fehler.
InformationsquelleAutor der Antwort Ignacio Vazquez-Abrams
Alles über
str
korrekt ist, noch eine andere Antwort: einException
Instanz hatmessage
Attribut, und möchten Sie vielleicht, es zu benutzen (wenn Ihr individuelleIntegrityError
nicht etwas besonderes tun):InformationsquelleAutor der Antwort khachik
Sollten Sie verwenden
unicode
stattstring
wenn Sie sich für die übersetzung Ihrer Bewerbung.BTW, Im Fall Sie der Verwendung von json, weil ein Ajax-request, ich schlage vor, Sie senden Fehler wieder mit
HttpResponseServerError
eher alsHttpResponse
:und verwalten von Fehlern in Ihren Ajax-Verfahren.
Wenn Sie möchten, kann ich nach ein paar Beispiel-code.
InformationsquelleAutor der Antwort Don
Diese funktioniert bei mir:
InformationsquelleAutor der Antwort Rick Graves