2012-12-13 126 views
2

嗨我有一個網站,輸出一個用戶結果作爲零件和數量表。用戶在頁面上的交互可能會導致表中可變數量的行(部分)。Django動態表單形式

我需要保存對用戶部分的這個名單,所以我相信表單集是處理這個的最佳方式:

forms.py

class UserBuildForm(forms.Form): 
    part = forms.CharField() 
    part_quantity = forms.IntegerField() 

views.py

from django.forms.formsets import formset_factory 
from tool.forms import UserBuildForm 

def my_view(request): 
    ... 
    UserBuildFormSet = formset_factory(UserBuildForm) 
    formset = UserBuildFormSet() 
    ... 

我的想法是包裝在表格html中的表單字段,以便部分列和全部tity列實際上是輸入(儘管只有數量應該是用戶可編輯的)。這樣每一行實際上就是一個表格。

現在,我的ajax函數通過追加和刪除表的行來工作。我可以添加額外的表單字段,只是純html嗎?

我應該如何處理這些動態數量的表單?我知道你可以使用extra來指定formset的數量,但我需要驗證的表單數目是未知的。

另外 - 這是保存用戶產品數據的典型方法的最佳方法嗎?

任何幫助非常感謝。

回答