6

我目前正在制作一个 django 网站,我对使用 Django-Forms 和传统的手工编码 HTML 表单感到困惑。HTML 表单在很多方面都对我有利,但我也尝试过 django 表单,它们肯定有其优势。对此的任何帮助将不胜感激。

4

5 回答 5

4

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

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

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

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

于 2012-08-03T17:44:47.407 回答
3

将 Django 表单视为 HTML 表单的 DRY。
使用 Django 表单,标准表单 HTML 会为您自动生成,您只需为要自定义表单的位置编写代码。
Django 表单还为您处理表单验证,只有当您需要一些特殊情况验证时,您才可以使用自己编写的代码进行覆盖。

于 2012-08-03T17:37:26.580 回答
3

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

您可能还想查看脆皮表格以进行更多自定义。

于 2012-08-03T17:33:29.067 回答
2

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

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

于 2012-08-03T17:38:27.407 回答
1

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

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

于 2015-05-12T11:09:08.877 回答