Django表单和html表单之间有什么区别

时间:2017-11-08 15:54:04

标签: python django forms

我正在使用基于html表单提交方法的django项目。 但最近,我才知道存在django形式。 请让我知道它们之间有什么区别。

2 个答案:

答案 0 :(得分:0)

在Django中编写表单最终将生成一个HTML表单。 Django表单可以绑定到一个模型,然后根据模型结构将验证应用于表单,这样就不必手动编写验证代码,还可以在对模型进行更改时保持对齐。

答案 1 :(得分:0)

来自Django的表单文档:

  

除了元素外,表单还必须指定两个内容:

     

其中:应返回与用户输入相对应的数据的URL

     

如何:HTTP方法应该通过

返回数据

Django的 Forms 是一个Python类,可以帮助解决这些问题。它仍在使用HTML表单输入元素,但提供了以下内容:

  • 帮助使用输入的数据
  • 格式化收到的数据,以便它在您的数据库中顺利进行
  • 验证数据是否适合使用
  • 提供安全性
  • 预填充字段

您将项目中的表单定义为.py文件,而不是HTML。

<form action="/your-name/" method="post">
    {% csrf_token %}
    {{ form }}
    <input type="submit" value="Submit" />
</form>

正如您所看到的,HTML输入元素仍然存在 - 但内容已经以python形式可重复使用。 Django将把它全部渲染到页面视图中。