def test_filter_for_widget_class_name(self): form = RegistrationForm() config = FormConfig() config.configure('widget', widgets.TextInput(), filter=ConfigFilter('Textarea')) widget = config.retrieve('widget', bound_field=form['comment']) self.assertEqual(widget.__class__, widgets.TextInput) widget = config.retrieve('widget', bound_field=form['name']) self.assertEqual(widget.__class__, widgets.TextInput) # swap widgets TextInput <> Textarea config = FormConfig() config.configure('widget', widgets.Textarea(), filter=ConfigFilter('TextInput')) config.configure('widget', widgets.TextInput(), filter=ConfigFilter('Textarea')) widget = config.retrieve('widget', bound_field=form['comment']) self.assertEqual(widget.__class__, widgets.TextInput) widget = config.retrieve('widget', bound_field=form['name']) self.assertEqual(widget.__class__, widgets.Textarea)
class SimpleForm(forms.Form): name = forms.CharField( max_length=64, widget=widgets.TextInput(attrs={"placeholder": "Jane Doe"}) ) email = forms.CharField( max_length=128, widget=widgets.TextInput(attrs={"placeholder": "*****@*****.**"}), ) tos = forms.BooleanField( label="", widget=SwitchInput(), help_text="Terms of Service" )
class Meta: model = {{ cookiecutter.main_model }} fields = ('description', 'due_to',) widgets = { 'description': widgets.TextInput(), 'due_to': widgets.DateTimeInput(), }
class LoginForm(AuthenticationForm, forms.Form): """ Override the default authentication """ message_incorrect_password = "******" message_inactive = "Usuário está inativo" username = forms.CharField(max_length=76, widget=widgets.TextInput(attrs={'placeholder': 'Email or Username'})) password = forms.CharField(widget=widgets.PasswordInput(attrs={'placeholder': 'Password'})) def clean(self): username = self.cleaned_data.get('username') password = self.cleaned_data.get('password') if username and password: self.user_cache = authenticate(username=username, password=password) if (self.user_cache is None): raise forms.ValidationError(self.message_incorrect_password) if not self.user_cache.is_active: raise forms.ValidationError(self.message_inactive) return self.cleaned_data
class BasicForm(forms.Form): """ TODO:-------------------------- input TextInput OK inputN NumberInput OK inputEmail EmailInput textarea TextInput OK drowpdown Select OK drowpdown SelectMultiple OK checkbox CheckboxInput checkbox2 MultiCheckbox? radiobox RadioSelect date DateInput time TimeInput datetime DateTimeInput """ COLORS_CHOICES = [ ('blue', 'Blue'), ('green', 'Green'), ('black', 'Black'), ] name = forms.CharField(max_length=32, widget=widgets.TextInput()) year = forms.IntegerField(widget=widgets.NumberInput()) description = forms.CharField(max_length=32, widget=widgets.Textarea(attrs={'rows': '4'})) color = forms.ChoiceField(widget=widgets.Select(), choices=COLORS_CHOICES) colors = forms.MultipleChoiceField(widget=widgets.Select(attrs={'multiple': True}), choices=COLORS_CHOICES) is_boolean = forms.CharField(max_length=32, widget=widgets.CheckboxInput()) option = forms.ChoiceField(widget=widgets.RadioSelect(), choices=COLORS_CHOICES) is_not_boolean = forms.CharField(max_length=32, widget=widgets.CheckboxInput()) option_again = forms.CharField(max_length=32, widget=widgets.CheckboxInput()) def __init__(self, *args, **kwargs): super(BasicForm, self).__init__(*args, **kwargs) self.fields["year"].initial = 2021