2012-08-03 89 views
2

我目前正在制作一个django网站,而我在使用Django-Forms和传统的手工编写的HTML表单之间感到困惑。 HTML表单在很多方面对我有利,但我也尝试过django表单,并且它们肯定有它们的优点。 任何帮助,将不胜感激。django窗体vs传统窗体

+2

尝试说明这是一个问题。目前,您正在做一个暗示性问题的陈述。明确提出你的问题,比如“为什么我应该使用Django表单?” – dirk 2012-08-03 17:40:23

回答

1

在我看来,当你有一个简单的应用程序从用户获取数据时,Django表单非常棒,它的格式与您想要将其存储在数据库中的方式相近。在这种情况下,您可以简单地编写模型并使用模型表单为您的表单生成正确的HTML。

您还可以使用表单从用户获取与模型不对应的数据,方法是使用常规表单并定义其属性。

使用Django表单,您还可以免费获得一些验证,您可以将字段设置为可选或必需,并且您可以创建下拉选项。

当你想要以自定义的方式显示某些字段时,它会变得更加困难。你仍然可以使用Django表单,但你需要努力一点。

3

如果您使用django来开发您的网站,我认为最好只使用django-forms,因为它们已经内置了验证并且可以很容易地与您的模型链接。您也将拥有一致的格式,并且不需要每次输入html。

您可能还想查看crispy-forms以获得更多定制。

3

想到Django表单为DRY的HTML表单。
使用Django表单,标准格式HTML会自动为您生成,并且您只需编写代码以便自定义表单。
Django表单也为您处理表单验证,只有当您需要特殊情况验证时,您才可以用自写代码覆盖。

2

Django表单是一种在页面上生成表单并对其进行管理的方法。您可以在页面上手动编写表单,只要您使用与表单类期望的字段名称兼容的字段名称,就可以使用表单类与响应中发送的数据进行交互。

最终,django表单肯定会让你的生活更轻松。

1

Django表单的主要目的是验证数据。

您可以将它们用于未通过HTML POST提交的数据。渲染他们,因为HTML是他们所做的其他事情,但这不是他们的主要目的。