def __new__(cls, *args, **kwargs): # self.fields['customer_note'].widget.attrs['class'] = 'form-control' # disabled_fields = ['qq', 'consultant'] for field_name in cls.base_fields: field = cls.base_fields[field_name] # print("field repr",field_name,field.__repr__()) attr_dic = {'placeholder': field.help_text} if 'BooleanField' not in field.__repr__(): attr_dic.update({'class': 'form-control'}) # print("-->field",field) if 'ModelChoiceField' in field.__repr__(): # fk field attr_dic.update({'data-tag': field_name}) # if 'DateTimeField' in field.__repr__(): # attr_dic.update({'placeholder': field_name}) if cls.Meta.form_create is False: if field_name in cls.Meta.admin.readonly_fields: attr_dic['disabled'] = True # print('----read only:',field_name) field.widget.attrs.update(attr_dic) if hasattr(cls.Meta.admin, "clean_%s" % field_name): clean_field_func = getattr(cls.Meta.admin, "clean_%s" % field_name) setattr(cls, "clean_%s" % field_name, clean_field_func) else: if hasattr(cls.Meta.model, "clean2"): # clean2 is kingadmin's own clean method clean_func = getattr(cls.Meta.model, "clean") setattr(cls, "clean", clean_func) else: # use default clean method setattr(cls, "clean", default_clean) return ModelForm.__new__(cls)
def __new__(cls, *args, **kwargs): for field_name, field_obj in cls.base_fields.items(): field_obj.widget.attrs['class'] = 'form-control' try: if field_obj.widget.input_type == 'checkbox': field_obj.widget.attrs['class'] = 'checkbox' except AttributeError: pass if not form_add: if field_name in admin_class.readonly_fields: field_obj.widget.attrs['disabled'] = 'disabled' return ModelForm.__new__(cls)
def __new__(cls, *args, **kwargs): for field_name, field_obj in cls.base_fields.items(): field_obj.widget.attrs['class'] = 'form-control' return ModelForm.__new__(cls)
def __new__(cls, *args, **kwargs): for field_name, field_obj in cls.base_fields.items(): field_obj.widget.attrs['class'] = 'form-control' if field_name in cls.Meta.readonly_fields: field_obj.widget.attrs['disabled'] = 'disabled' return ModelForm.__new__(cls)