通常のDjangoビューで検証しているDjangoフォームがあります。私は純粋なエラーを抽出する方法を理解しようとしています(HTMLフォーマットなし)。以下は私が現時点で使用しているコードです。JSONで純粋なDjangoフォームエラーを返す
return json_response({ 'success' : False,
'errors' : form.errors })
これで、私はDjangoの悪名高いプロキシオブジェクトエラーを取得します。それぞれのエラーをUnicodeに強制することは、どちらのトリックも行いません。なぜなら、それぞれのエラー '__unicode__
メソッドは効果的にHTML化されるからです。
アイデア?
EDIT:、これはjson_response
の定義興味のある方のために
です:
def json_response(x):
import json
return HttpResponse(json.dumps(x, sort_keys=True, indent=2),
content_type='application/json; charset=UTF-8')
受け入れられる回答は古くなっています。 https://stackoverflow.com/a/28256365/604511 – aitchnyu