2017-03-29 10 views
2

Djangoで私のWebアプリケーション用の登録/サインアップや一般的なフォームを作成していて、Web/Android/IOS用に同じフォームが必要だとします。ですから、フロントエンドとバックエンド(Django)がJSONを介して通信することを望みます。私の質問は、どのプラットフォーム(Web/Android/IOS)のユーザーが「電子メールがすでに存在します」というエラーのような無効なデータを返す場合、JSON形式で検証エラーを送信するにはどうすればいいですか?JSON形式のdjango検証エラーを返します

このタイプのシナリオを処理するには、可能な限り最良の方法が必要です。詳細な例/説明は非常に高く評価されます。

ありがとうございます。

答えて

2

フォームのerrors属性にはas_jsonメソッドがあります。

if form.is_valid(): 
    # process valid form 
else: 
    errors_json = form.errors.as_json() 
    ... 

は、クロスサイトスクリプティング攻撃を避けるために、エラーをエスケープについてのドキュメントでの警告に注意してください。

+0

Android/IOSはどのようにこれらのエラーメッセージをキャッチしますか?エラーは変数errors_jsonに格納されます。 –

+0

しかし、私は、応答は、ファイル/ djangoのプロジェクトフォルダ内に存在するURLのみで構成されていると思います。 –

関連する問題