Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
似乎Django forms.From与ModelForm相比是多余的?_Django - Fatal编程技术网

似乎Django forms.From与ModelForm相比是多余的?

似乎Django forms.From与ModelForm相比是多余的?,django,Django,当程序员希望用html生成表单并同时将数据保存在数据库中时,Django ModelForm是一个更好的选择。谁能说在哪种情况下,表单是更好的选择?是否有任何工作只有表单可以代替ModelForm完成?我只能使用表单在数据库中保存数据吗?WellModelForm是表单的一种类型,它是表单的一个子类。 因此,Form是通用的,而ModelForm是专用的 是否有任何工作只有表单可以代替ModelForm完成 如果表单数据没有准确映射到现有的模型中,则可能需要使用form并手动进行处理 您还可以对

当程序员希望用html生成表单并同时将数据保存在数据库中时,Django ModelForm是一个更好的选择。谁能说在哪种情况下,表单是更好的选择?是否有任何工作只有表单可以代替ModelForm完成?我只能使用表单在数据库中保存数据吗?

Well
ModelForm
是表单的一种类型,它是表单的一个子类。 因此,
Form
是通用的,而
ModelForm
是专用的

是否有任何工作只有表单可以代替ModelForm完成

如果表单数据没有准确映射到现有的模型中,则可能需要使用
form
并手动进行处理


您还可以对
表单
进行子类化,例如
类MyCustomForm(Form)
来封装您需要的一些自定义表单机制,并重用您的
MyCustomForm

第一个想到的示例:它不映射到必须保存到数据库的模型实例,实际上,它是一个
表单.forms
子类,不是
forms.ModelForm
子类。