我有這樣的形式:隱藏字段不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)' –