对于别的类型的表单数据我使用的是cleaned_data['列名']取得传入值,对于ChoiceField和MultipleChoiceField的传入值取值应当怎么取?如果用cleaned_data['列名']方式取值分别会得到什么样的数据结构?
cleaned_data['列名']
ChoiceField
MultipleChoiceField
认证高级PHP讲师
コード: モデル:
テストとして、テーブルに 3 行のデータを挿入します。
フォーム:
上記のフォームでは、ModelChoiceField と ModelMutipleChoiceField をクエリセットで作成し、ID が 2 以下のオブジェクトをクエリします。
ビュー:
テンプレート:
以下のようにフォームに記入していきます。
出力結果は次のとおりです:
これは次のことからわかります: ModelChoiceField は、cleaned_data を通じて、対応するクエリセットに対応するモデルのインスタンスに値を返します。 ModelMultipleChoiceField は、cleaned_data を通じて、対応するクエリセットに対応するモデルのインスタンスのリストを返します。 他のフォームは、cleaned_data 戻り値を使用してフィールドのタイプを定義します。 Django のドキュメントは非常に明確なので、注意深く読むことができます。
コード:
を使用してテストできます。 リーリーモデル:
テストとして、テーブルに 3 行のデータを挿入します。
リーリーフォーム:
リーリー上記のフォームでは、ModelChoiceField と ModelMutipleChoiceField をクエリセットで作成し、ID が 2 以下のオブジェクトをクエリします。
ビュー:
リーリーテンプレート:
リーリー以下のようにフォームに記入していきます。
出力結果は次のとおりです:
リーリーこれは次のことからわかります:
ModelChoiceField は、cleaned_data を通じて、対応するクエリセットに対応するモデルのインスタンスに値を返します。
ModelMultipleChoiceField は、cleaned_data を通じて、対応するクエリセットに対応するモデルのインスタンスのリストを返します。
他のフォームは、cleaned_data 戻り値を使用してフィールドのタイプを定義します。
Django のドキュメントは非常に明確なので、注意深く読むことができます。