0
我正在使用ModelForm並以u'first_name': [u'XX'], u'last_name': [u'']
等形式傳遞存儲在數據庫中的數據,該數據使用保存原始發佈數據的MultiValueDict,但表單完全呈現爲實際領域包括[u'']
包裝其餘。將MultiValueDict傳遞給Django ModelForm
如果我嘗試將相同的MultiValueDict傳遞給常規窗體,我不會遇到這個問題。
我不知道如何處理字典或處理數據,然後將其分配爲初始值。
編輯:從後得到的數據,並將其恢復到形式
if request_post_data is not None:
self.form = self.FORM_CLASS(data=request_post_data)
self.draft.raw_data = dict(request_post_data) # preserves multiple values per key
self.draft.save()
else:
# conversion to MultiValueDict restores multiple values per key
self.form = self.FORM_CLASS(initial=MultiValueDict(self.draft.raw_data) if self.draft.raw_data else None)`
request_post_data
來自於一個數據庫中的序列化的字段和實際值
代碼如下所示:
<MultiValueDict: {u'last_name': [u''], u'suffix': [u''], u'prefix': [u''], u'first_name': [u'XX'], u'middle_name': [u'']}>
最終顯示在我這樣的表格中(發送到ModelForm時):
感謝您的幫助!
請提供一些代碼示例。它使你更容易幫助你。 –