Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.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中创建表单的最佳方法_Django_Django Forms - Fatal编程技术网

在django中创建表单的最佳方法

在django中创建表单的最佳方法,django,django-forms,Django,Django Forms,我正在学习django,当谈到创建表单时,有三种方法可以在django中创建表单 在html中创建表单 表单api 模型 我应该使用什么方法来创建论坛,使用一种方法而不是另一种方法有什么好处,或者所有方法都是相同的?我想说,就快速开发而言,ModelForm是最好的方法。如果要使用HTML创建原始表单,则必须花费额外的时间验证用户的输入,而且很容易出现错误 ModelForm继承模型,并尝试将模型上的相同验证器应用于表单。因此,表单的输入将有效地插入到模型的表中 如果要查看此操作,请创建一个指向

我正在学习django,当谈到创建表单时,有三种方法可以在django中创建表单

  • 在html中创建表单
  • 表单api
  • 模型

  • 我应该使用什么方法来创建论坛,使用一种方法而不是另一种方法有什么好处,或者所有方法都是相同的?

    我想说,就快速开发而言,
    ModelForm
    是最好的方法。如果要使用HTML创建原始表单,则必须花费额外的时间验证用户的输入,而且很容易出现错误

    ModelForm
    继承模型,并尝试将模型上的相同验证器应用于表单。因此,表单的输入将有效地插入到模型的表中

    如果要查看此操作,请创建一个指向特定模型的
    ModelForm

    class ExampleModelForm(ModelForm):
        class Meta:
        model = your_model
    
    然后进入交互式shell并导入您的
    ModelForm
    s

    python manage.py shell

    实例化您的表单

    form=ExampleModelForm()

    然后查看表单上已激活的验证程序:

    repr(表格)

    您将看到表单的验证与模型非常匹配。您无法使用其他指定的方法来实现这一点