我有这样的形式:隐藏字段不cleaned_data
class CollaboratorForm(forms.Form):
user = forms.CharField(label="Username",max_length=100)
canvas = forms.IntegerField(widget=forms.HiddenInput)
....
def clean_user(self):
user = self.cleaned_data['user']
canvas = self.cleaned_data['canvas']
在视图中,我简单地调用
if form.is_valid():
我得到的错误:
KeyError at /canvas/1/add-collaborator/
'canvas'
根据萤火虫的价值是张贴,这似乎并没有让我的清洁功能。我做错了吗?
编辑:邮政数据
canvas 1
csrfmiddlewaretoken 2cb73be791b32ca9a41566082c804312
user username
EDIT2:我也很愿意接受的答案,可以告诉我如何将主键发送到clean_user功能,其中主键是/ 1 /在上面的示例url中。视图中的函数被调用是:
def canvas_add_collaborator(request, pk):
所以我会想的PK发送到这将通过不需要隐藏字段解决我的问题的clean_user功能。
你可以添加你的http文章的内容吗?关于EDIT2的 –
。您可以将pk传递给clean_user函数。 'clean_user(self,pk)' –