有没有办法在CreateView表单中创建隐藏的表单字段?

时间:2015-07-01 12:22:11

标签: python django django-forms

有没有办法在CreateView表单中创建隐藏的表单字段?

unknown

我必须将一些数据(评论的父级)传递给数据库。它适用于ModelForm,我将带有JS的父传递给隐藏字段:

class CommentAdd(AjaxableResponseMixin, CreateView):
    model = Comment
    fields = ['author_name', 'text']
    success_url = '/thanks/'
    template_name = 'tree.html'

如何使用CreateView表单执行相同操作?

1 个答案:

答案 0 :(得分:2)

定义包含隐藏输入的模型表单类。

class CommentForm(ModelForm):
    class Meta:
        model = Comment
        fields = ('author_name', 'text', 'parent')
        widgets = {
            'parent': forms.HiddenInput,
        }

然后使用form_class属性在视图中使用该表单。

class CommentAdd(AjaxableResponseMixin, CreateView):
    form_class = CommentForm
    ...