您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Django表单:将参数传递给表单

Django表单:将参数传递给表单

你应该定义表单的__init__方法,如下所示:

class StylesForm(forms.Form):
    def __init__(self,*args,**kwargs):
        self.site_id = kwargs.pop('site_id')
        super(StylesForm,self).__init__(*args,**kwargs)
当然,在创建对象之前,你无法访问self.site_id,因此该行:

     height = forms.CharField(widget=forms.TextInput(attrs={'size':site_id}))

没有意义。创建表单后,必须将属性添加到窗口小部件。尝试这样的事情:

class StylesForm(forms.Form):
    def __init__(self,*args,**kwargs):
        self.site_id = kwargs.pop('site_id')
        super(StylesForm,self).__init__(*args,**kwargs)
        self.fields['height'].widget = forms.TextInput(attrs={'size':site_id})

    height = forms.CharField()
Go 2022/1/1 18:22:43 有319人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶