【发布时间】:2011-11-30 15:49:26
【问题描述】:
我有这个表格:
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 函数的答案,其中主键是上面示例 url 中的 /1/。视图中被调用的函数是:
def canvas_add_collaborator(request, pk):
所以我想将 pk 发送到 clean_user 函数,这将通过不需要隐藏字段来解决我的问题。
【问题讨论】:
-
你可以添加你的http帖子的内容吗?
-
关于 EDIT2。您可以将 pk 传递给 clean_user 函数。 'clean_user(self, pk)'
标签: python django django-forms django-views