クラスはインスタンス化する前に__new__方法を実行します
cls.base_fields - 「フォームフィールドのadmin_class.model._meta.fields - 」モデルフィールド
`` django.forms`` インポートのModelForm DEFの create_dynamic_model_form(ADMIN_CLASS、= form_add 偽): "" " 動的に生成されたのModelFormは :追加するとき、デフォルトはFalseの修飾された形である真form_add """ クラス: -メタ モデル = admin_class.model #フィールド=を[ '名前'、 'コンサルタント'、 'ステータス'] フィールド= " __all__がある" IF ない form_add: #の変更 インクルードは=除外admin_class.readonly_fields ADMIN_CLASS。form_add = Falseの#このADMIN_CLASS全体のインスタンスが同じであるため、あります #ここでは最後の呼び出しを避けるために、Trueにプロパティを変更する場合はtrueを追加するように変更する 他の:#追加 admin_class.form_add = 真 DEFの __new__(CLS、* argsを、** kwargsから): 印刷(" __new__ " 、CLS、引数、 kwargsから) のための FIELD_NAME で cls.base_fields: #admin_class.model._meta.fieldsの? 印刷(' 123 ' 、cls.base_fields) 印刷(' 456 ' 、admin_class.model._meta.fields) filed_obj =cls.base_fields [FIELD_NAME] filed_obj.widget.attrs.update({ ' クラス':' フォームコントロール' }) #admin_class.readonly_fieldsでFIELD_NAME場合: #1 filed_obj.widget.attrs.update({ '無効':「真「}) #の 印刷( " -新しいメタ:"、cls.Meta) #の印刷(cls.Meta.exclude) を返す のModelFormを。__new__ (CLS) dynamic_form =タイプ(" DynamicModelForm "、(ModelFormサブクラス、)、{ ' メタ':メタ、' __new__ '__new__ }) プリント(dynamic_form) 戻り dynamic_form