0

最終的な送信 (および検証) の前に、常に一種の Ajax 事前検証検証を行いたい複雑なフォーム ワークフローを使用しています。そのため、サーバーに Ajax リクエストを送信してフォームを検証していますが、結果は保存していません。エラーがある場合は、ユーザーに表示します。

しかし、問題は必須フィールドであり、それらが空の場合 (ユーザーがまだフォームのコンテンツを完成させていないため)、すべてが欠損値としてマークされます。私の質問は、空でないフィールドのみで検証を実行するにはどうすればよいですか? 最終提出のために、すべてのフィールドを検証し、欠落しているフィールドを見つけます。しかし、この部分的な検証では、入力されたフィールドのみを検証したいと考えています。

4

1 に答える 1

0

required=False1 つのアプローチは、検証の前にフォーム フィールドの設定を繰り返すことです。ajax ビューでは、次のようなものが機能するはずです。

for field in myform.fields.itervalues():
    field.required = False
json_result = json.dumps({'form_valid': myform.is_valid()})
于 2013-07-07T20:52:47.573 に答える