2014-03-01 86 views
1

我有一個帶有父實體和子實體的內聯窗體集工廠。內聯窗體集 - 如何爲子窗體設置默認值

我需要設置子窗體取決於父項屬性的初始值。

我認爲在我的BaseFormset表格中這樣做init將是最好的方法。

因此,這裏是我做的:

class MyBaseFormset(BaseInlineFormSet): 

def __init__(self, *args, **kwargs): 
    #Crispy 
    ... 
    super(MyBaseFormset, self).__init__(*args, **kwargs) 

    form = self.forms[0] 
    temp = Child() 
    temp.x = "a" 
    temp.y = "z" 
    form.instance = temp 

我第一次執行這個似乎工作 - 但現在我總是爲我的孩子一個空/默認形式。

任何想法我可能做錯了什麼?我沒有得到任何錯誤...

謝謝!

回答

1

有時你看不到,因爲所有的樹木的木材...

只需使用inital值,而不是一個對象:

form.fields['x'].initial = self.instance.x 
相關問題