django: BoundField和Form Field之间的关系是什么?

7
根据官方文档:
- BoundField: 一个包含数据的Field (源代码) (文档) - Form Field: 管理表单数据 (源代码) (文档)
如果我查看源代码,它们似乎都是独立的类,每个类都继承自基类object。然而,它们似乎以某种方式相关联,只是我无法弄清楚它们之间的关系。
我唯一找到的关系是Field类定义了一个方法get_bound_field。这个方法的docstring读取:“返回一个BoundField实例,在模板中访问表单字段时将使用该实例。
问题:你能帮我弄清BoundFieldForm Field之间的关系吗?如果有关系,它们之间有什么不同?或者在何时使用哪个?
1个回答

9

在定义表单时,您需要声明表单字段。它们决定了字段的类型和名称,使用哪些小部件以及运行哪些验证。

您永远不会直接创建绑定字段;当您实例化一个表单并迭代其字段时,它们是通过该方法产生的。它们处理显示字段并用任何值填充它的工作。BoundField具有属性.field,其中包含表单字段。这种关系是组合关系,而不是继承关系。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接