Django:如何在使用非模型数据时预先填充表单?

时间:2014-01-23 21:26:09

标签: python django django-templates

就我而言,Django应用程序正在通过API保存并从外部服务获取用户数据。我得到一个具有许多用户属性的对象,例如姓名,地址等。

为了更新此类信息,我使用Django的原生表单,使用简写模板格式,例如:{{ edit_account_form.as_p }}

当我显示表单以编辑信息时,我想用来自用户对象的数据预先填充它。我知道我可以将对象传递给模板并将这些值渲染到每个输入字段的val和占位符中,但是这需要我完全重新创建输入的表单输入,我不想这样做。

可能的?

1 个答案:

答案 0 :(得分:3)

使用initial在运行时声明表单字段的初始值。例如,您可能希望使用当前会话的用户名填写用户名字段。

f = ContactForm(initial={'subject': 'Hi there!'})