2011-06-18 42 views
0

我有文本框的數組這樣如何接收在Django文本陣列的公佈值

<input type="text" value="" name="key[]" /> 
<input type="text" value="" name="key[]" /> 
<input type="text" value="" name="key[]" /> 

在Python訪問貼出值

keys = postDict['key[]'] 

當我打印變量的值鍵只打印最後一個文本框的值。如何以列表或數組的形式接收發布的值。請幫助

問題

的問題是我追加文本框中的名稱關鍵到div的更多點擊一個名爲按鈕時。格式爲未發佈運行時生成的文本框

回答

1

不要調用字段key[]。這是一個PHP主題。

使用request.POST.getlist('key')獲取所有值。

+0

這個偉大的指南仍然只獲取最後一個值 – Rajasekar

1

正如丹尼爾所說,使用request.POST.getlist('key')來獲取所有的值。但是,從您的評論中,聽起來像您試圖獲取數據的字段的名稱對於所有元素都是相同的,在這種情況下.getlist()只是返回它可以獲得的最後一個元素。 (.get())也會發生同樣的情況。

因此,Django IS會接收您想要的原始數據,但是當您嘗試.get()時會因爲鍵衝突而將其壓扁。

是否有任何東西阻止您爲每個文本輸入使用不同的名稱?如果不是的話,我會沿着這條路走下去,因爲它整體上更安全。

PS - 您示例中的PHPism讓我覺得您對Django來說很新。如果是這種情況,請查看Django forms library