我try 在表单初始化后将该字段设置为某个值.

例如,我有下面的课程.

class CustomForm(forms.Form):
    Email = forms.EmailField(min_length=1, max_length=200)

在视图中,我希望能够做这样的事情:

form = CustomForm()
form["Email"] = GetEmailString()

return HttpResponse(t.render(c))

推荐答案

因为您没有传递POST数据,所以我假设您试图做的是设置一个初始值,该值将显示在表单中.这样做的方式是使用initial关键字.

form = CustomForm(initial={'Email': GetEmailString()})

更多解释请参见Django Form docs.

如果您在提交表单后try 更改某个值,则可以使用类似以下内容:

if form.is_valid():
    form.cleaned_data['Email'] = GetEmailString()

有关使用cleaned_data的更多信息,请查看上面参考的文档

Django相关问答推荐

Django BooleanField如何使用RadioSelect?

通过父模型查询子对象-Django

Django AWS S3对象存储boto3媒体上传报错

NoneType对象没有属性保存Django

Django中的 联合(Union) 和相交(Intersect)

Django基于类的视图上的success_url的反向抱怨循环导入

Django:无法从另一个应用程序导入模型

如何查看 Django 调试工具栏?

如何在 django tests.py 中创建管理员用户

如何在 PyCharm 中重命名 Django 元素?

TestCase 类中的 setUpClass、setUpTestData 和 setUp 有什么区别?

Django 从字段开始

如何在Django中获取一个组的所有用户?

django.core.exceptions.ImproperlyConfigured:请求设置 USE_I18N,但未配置设置

从基于类的通用视图中获取 request.session

Django中reverse()和reverse_lazy()的区别

在 django admin 中控制 TextArea 小部件的大小

Django 多项 Select 字段/复选框 Select 多个

在 Django 单元测试中使用 mock 修补 celery 任务

确保只有一个工作人员在运行多个工作人员的 pyramid 网络应用程序中启动 apscheduler 事件