Change a Django form field to a hidden field

后端 未结 7 2114
故里飘歌
故里飘歌 2020-12-22 20:21

I have a Django form with a RegexField, which is very similar to a normal text input field.

In my view, under certain conditions I want to hide it from

7条回答
  •  无人及你
    2020-12-22 21:01

    For normal form you can do

    class MyModelForm(forms.ModelForm):
        slug = forms.CharField(widget=forms.HiddenInput())
    

    If you have model form you can do the following

    class MyModelForm(forms.ModelForm):
        class Meta:
            model = TagStatus
            fields = ('slug', 'ext')
            widgets = {'slug': forms.HiddenInput()}
    

    You can also override __init__ method

    class Myform(forms.Form):
        def __init__(self, *args, **kwargs):
            super(Myform, self).__init__(*args, **kwargs)
            self.fields['slug'].widget = forms.HiddenInput()
    

提交回复
热议问题