2014-09-04 179 views
0

我有下面的代碼在Django 1.5工作:表單集驗證改變的Django 1.6

if formset.is_valid(): 
    formset.save() 

該formset內的形式內部的清潔執行檢查(),以確保某些必填字段中輸入(已知的唯一在運行時)。這意味着雖然用戶可能不會輸入任何值,但驗證仍會運行,並在需要時請求輸入數據。

隨着Django 1.6的這種行爲不再適用。如果沒有改變,那麼當調用formset.is_valid()時,表單的clean()方法不會再被調用。

我無法找到任何可以解釋這個新的behvaiour的更新日誌。即使未做任何更改,formset.is_valid()上是否有強制進行驗證的標誌?

回答

0

由於formset改變了窗體的edit_permitted屬性,所以好像驗證被跳過了。

下改變固定的問題,我有:

# Was required to disable shortcut for validation when 
    # no data was entered 
    for form in formset: 
     form.empty_permitted = False