- July 25, 2008
- newforms forms field modelform
- 6 (after 6 ratings)
I will change a model form widget attribute without define the complete field. Because many "meta" information are defined in the model (e.g. the help_text) and i don't want to repeat this.
I found a solution: Add/change the widget attribute in the init, see example code.
1 2 3 4 5 6 7 8 9 10 11 12
from django import forms from django.contrib.auth.models import User class UserForm(forms.ModelForm): def __init__(self, *args, **kwargs): super(UserForm, self).__init__(*args, **kwargs) # change a widget attribute: self.fields['user_permissions'].widget.attrs["size"] = 5 class Meta: model = User
More like this
- Add model form field meta data in a DRY way by jedie 7 years, 3 months ago
- Reorder fields directly in the ModelForm by HM 8 years, 1 month ago
- Dynamically change admin widgets at runtime by davisd 6 years, 2 months ago
- Selectively change fields, widgets or labels in forms created from models by danjak 9 years, 3 months ago
- ModelForm Class saving m2m by ckarrie2 4 years, 8 months ago