私は大きなジャンゴフォームを持っています。それは選択されているフィールドに依存する多くのデータを持っています。選択時にジャンゴフォームが変更される
例:
車はありますか? YES/NOドロップダウンボックス。
はい、私が作る追加のフィールドを表示したい場合は
/モデル/年/ CCなどなどいいえ、私は隠されたそれらを維持したい場合は
。これにはどのような方法が最適ですか?シンプルな表示/非表示divを使用してjqueryまたは何か私はやっている必要がありますが良いですか?
私は大きなジャンゴフォームを持っています。それは選択されているフィールドに依存する多くのデータを持っています。選択時にジャンゴフォームが変更される
例:
車はありますか? YES/NOドロップダウンボックス。
はい、私が作る追加のフィールドを表示したい場合は
/モデル/年/ CCなどなどいいえ、私は隠されたそれらを維持したい場合は
。これにはどのような方法が最適ですか?シンプルな表示/非表示divを使用してjqueryまたは何か私はやっている必要がありますが良いですか?
はい、クライアントサイドでJQueryでシンプルな表示/非表示を使用する必要があります。 サーバー側では、フォームのclean
メソッドで条件付き検証が必要な場合があります。他の項目が選択されている場合にのみ、が必要なフィールドをにする必要があります。例えば
:
class MyForm(Form):
...
def clean(self):
cleaned_data = self.cleaned_data
has_car_required_fields = ['foo', 'bar', 'baz']
if cleaned_data.has_key('has_car') and cleaned_data['has_car']:
for field_name in has_car_required_fields:
if not cleaned_data.has_key(field_name) or not cleaned_data[field_name]:
self._errors[field_name] = ErrorList([_(u'This field is required')])
return cleaned_data
あなたは私がやっていることを計画しています。私は右の線に沿って(変化のために)歓声を考えていたように見えます! – Mark
私はjQueryを使ってこれを行います。 – Marcin