0
根據documentation爲綁定到模型的字段提供初始值是不可能的。在ModelFormset中設置初始值
在我的模型形式,雖然我已經創建了一個額外的未綁定字段:
class DealCForm(ModelForm):
attach_deal_conversation = forms.BooleanField(required=False, initial=False)
因此,我想,如果某些條件得到滿足來設置這個值。
查看:
deal_formset = modelformset_factory(Deal, form=DealCForm, extra=0)
if (request.POST)
pass
else:
opendeal_formset = deal_formset(queryset=formset_query)
variables = RequestContext(request, {'opendeal_formset' : opendeal_formset)
return render_to_response('conversation.html', variables)
在視圖中,只需將它發送到模板之前,我已經建立直接的價值,但它不工作:
for dfm in deal_formset:
for odfm in opendeal_formset:
if dfm.pk == odfm.pk:
odfm.attach_deal_conversation = True;
但不起作用。任何想法如何設置一個未綁定的字段的初始值?
非常感謝
這不是文件說什麼。它表示初始值不適用於*預先存在*實例的表單;它們確實適用於「額外」表單或尚未保存的表單。這是理想的,因爲如果它是現有的實例,則希望其保存的數據最初顯示,而不是默認的初始數據。 – 2012-08-03 19:41:12
嗯,我沒有任何額外的形式。但是,我可以設置一個未綁定字段的初始值嗎?我想我需要將它作爲一個數組與內部的元組傳遞... – Houman 2012-08-03 19:45:55