如何向 ModelForm 添加类属性

mil*_*c88 3 django django-forms

我有型号:

class TestPolja(models.Model):
    class Meta:
        verbose_name = 'Test polja'

        integerPolje1 = models.IntegerField('integerPolje1')
        charPolje1 = models.CharField('charPolje1',max_length = 1024)
        bigint1 = models.BigIntegerField('bigint1',default = 67573737)
        date = models.DateField('date')
Run Code Online (Sandbox Code Playgroud)

和模型形式:

class TestPoljaForm(ModelForm):
    class Meta:
        model = TestPolja
Run Code Online (Sandbox Code Playgroud)

如何更改TestPoljaForm为标签添加class属性<input>

如何添加小部件?

ndp*_*dpu 5

您可以通过表单方法来完成__init__

class TestPoljaForm(ModelForm):
    class Meta:
        model = TestPolja

    def __init__(self, *args, **kwargs):
        super(TestPoljaForm, self).__init__(*args, **kwargs)

        # for example change class for integerPolje1
        self.fields['integerPolje1'].widget.attrs['class'] = 'SOMECLASS'

        # you can iterate all fields here
        for fname, f in self.fields.items():
            f.widget.attrs['class'] = 'SOMECLASS'
Run Code Online (Sandbox Code Playgroud)