2012-09-27 42 views
0

的默認選項我有問題,模型,比如我有Django的模型:選項中選擇,窗口小部件如何更改插件

fallBack = models.CharField(max_length=100, choices=FALLBACK, default = 99,blank = True,null = True) 
FALLBACK = (
    (u'99','-'), 
    (u'standard', u'Standard TPF deactivation/exlusion applies'), 
    (u'fallback', u'Fallback script provided'), 
    (u'na',u'N/A'), 
    (u'other',u'Other'), 
    ) 

,如果我將在模板中使用

{% for obj in form.forms %} 
    {{obj.fallBack}} 
{% endfor %} 

它會返回sthing這樣

<select name="form-0-fallBack" id="id_form-0-fallBack"> 
    <option value="">---------</option> 
    <option value="99" selected="selected">-</option> 
    <option value="standard">Standard TPF deactivation/exlusion applies</option> 
    <option value="fallback">Fallback script provided</option> 
    <option value="na">N/A</option> 
    <option value="other">Other</option> 
</select> 

但我想要說的東西是這樣的:

<select **onchange="javascript:make()"** name="form-0-fallBack" id="id_form-0-fallBack"> 
    <option value="">---------</option> 
    <option value="99" selected="selected">-</option> 
    <option value="standard">Standard TPF deactivation/exlusion applies</option> 
    <option value="fallback">Fallback script provided</option> 
    <option value="na">N/A</option> 
    <option value="other">Other</option> 
</select> 

怎麼做? 我可以在模板寫謝勝利選項,而不是{{obj.fallBack}}但後來我formset.is_valid()不工作,當我會做這樣的事情:

1)I will choose from fallBack second option(Standard TPF deactivation/exlusion applies) 
2) submit, 
3) I have some error in other place in template 
4) Then my obj.fallBack returning to default option (99 , -) 

感謝您的幫助

回答

0

確定,所以創造新的領域,而不是charfield與此屬性

widget=forms.Select(attrs={'onchange': 'javascript:make()'}) 

感謝您的幫助

0

退房Django文檔上Widgets

widget=forms.Select(attrs={'onchange': 'javascript:make()'}) 

這看起來像一個ModelForm,看看如何爲ModelForms

指定部件10
+1

錯誤插件:) –

+0

,其只對窗體我想.... – Silwest

+0

哦,親愛的。謝謝,我已經更新了我的答案 –

相關問題