0
ModelFormでは、他のフィールドに依存するフィールドがいくつかあります。例えば、Django ModelFormはコンテキストにデータを追加します
class FactorForm(ModelForm):
//field definitions
class Meta:
model=Factor
fields=['name', 'type', 'sets']
sets
はまた、選択されtype
に依存することを選択しています。 type
が変更された場合、sets
のオプションを更新する必要があります。したがって、テンプレートのフィールドのリスト(つまり、refresh = ['type'])を指定したいので、指定されたフィールドが変更されたときにJavaScript関数がフォームを置き換えることができます。
フォームのコンテキストにランダムデータを挿入するにはどうすればよいですか?
get_context_data
を一般的なCBVで上書きすることでこれを行うことができます。しかし、ModelFormにはそのようなメソッドはありません。
好ましくは、私はメタの下で私のさわやかなフィールドをModelFormParent機能に共通のロジックを入れて、リストアップしたいと思います:
class FactorForm(ModelFormParent):
//field definitions
class Meta:
model=Factor
fields=['name', 'type', 'sets']
refresh=['type']