我开始学习 django 并且刚刚接触到 django 表单(过去我一直在 django 模板中使用手动表单)。
无论什么情况我都应该始终使用 Django 表单吗?在某些情况下我应该在模板中手动编写表单吗?
最佳答案
您可以使用自己的表单,但最好使用 django 表单,因为它提供更多的自定义和灵 active 。
当您使用 Django 表单时,只需很少的代码更改即可轻松更改呈现的“小部件”类型。
例如:
class MyForm(forms.Form):
my_field = forms.ChoiceField(choices=CHOICES) #choices can be a tuple
将呈现为复选框字段。 如果您想呈现与单选按钮相同的效果,您所要做的就是:
class MyForm(forms.Form):
my_field = forms.ChoiceField(widget=forms.RadioSelect, choices=CHOICES)
如果您有自己的表单,则必须手动更改整个代码。
您还可以一次性在服务器端执行一些自定义字段级验证(例如,检查用户名是否唯一)- 您可以在自定义表单中实现相同的目的,但您必须自己处理每个场景。
此外,django 具有 ModelForms
,它是 Model 对象的副本 - 这极大地减少了验证和表单处理所需完成的工作量。
关于python - 何时使用 Django 表单与手动表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16868300/