【发布时间】:2011-07-13 15:02:15
【问题描述】:
我有一个想要自定义清理的 django 表单。我不想只指定像这里 (Django form and field validation) 这样的错误消息,而是自己更改该字段。我尝试了多种方法,但不断遇到错误,例如cleaned_data 是不可变的。
为了解决这个问题,我制作了一个副本,对其进行了更改并将其重新分配给自己。这是最好的方法吗?我可以/应该在视图中处理这个吗?制作副本似乎很糟糕,但我一直遇到“不可变”的障碍。下面的示例代码我只是检查主题末尾是否有“--help”,如果没有则添加它。谢谢
def clean(self):
cleaned_data=self.cleaned_data.copy()
subject=cleaned_data.get['subject']
if not subject.endswith('--help'):
cleaned_data['subject']=subject+='--help'
self.cleaned_data=cleaned_data
return self.cleaned_data
【问题讨论】:
-
下面的所有答案都不好。 Here's an answer 确实有效。