djangoでエラーが発生したフォームを送信すると、フォームのすべてのフィールドが消去されます。フィールドに情報を保存したいのは、ユーザーがデータを送信しているときに役立つからです。djangoでエラーが発生したフォームを提出した後、フィールドのデータを保持
これはaplicationの私のviews.pyです:
def new(request):
context = {}
if request.method == 'POST':
form = NewSubject(request.POST)
if form.is_valid():
context['is_valid'] = True
form.save()
form = NewSubject()
else:
context['is_valid'] = False
else:
form = NewSubject()
context['form'] = form
return render(request, 'subjects/new.html', context)
サーバー側に送信する前に、クライアント側でJavaScriptを使用して検証する方が良いかもしれません。 – AK47
フォームで有効でないフォームデータが削除されていない場合は、テンプレート上にある可能性があります。 –
AK45では、まだJavaScriptを使って検証を試みていませんが、サーバー上でこれを行うことができればもっと興味深いでしょう。 ベアブラウン、私はテンプレートをいくつか修正しました。私はオリジナルのDjangoフォームを使用していませんが、独自のフォームを使用したパーソナライズされたフォームを使用しています。 –