2011-07-08 67 views
2

在我看來,我需要添加(動態)文本輸入,並且需要在控制器中獲取它們的值(一旦用戶提交了相應的表單)。如何在Ruby on Rails中將數組從視圖傳遞到控制器

我的輸入是:

<input type="text" name="airports_input_origin" class="airports_input_origin" id="airports_input_origin_0" size="40"/> 

<input type="text" name="airports_input_origin" class="airports_input_origin" id="airports_input_origin_1" size="40"/> 

等...等...

它們都具有相同的name屬性....所以我猜,如果我做

params[:airports_input_origin] 

我能得到陣列...但我錯了......

我怎樣才能獲得這些價值?

Thx!

回答

5

你必須做一些事情,像這樣:

<input type="text" name="airports_input_origin[0]" class="airports_input_origin" id="airports_input_origin_0" size="40"/> 

<input type="text" name="airports_input_origin[1]" class="airports_input_origin" id="airports_input_origin_1" size="40"/> 

Rails的瞭解,如果你喜歡標記的名稱中的數字它是一個數組。

所以你可以有一個JavaScript函數遍歷所有的輸入,並在每次添加/刪除目的地時重置它們的數字。使用正則表達式來替換數字,或者你甚至可以硬編碼名稱,並改變「[x]」,如果這是所有必需的。

+0

和我應該能夠參數[:airports_input_origin] .size或params [:airports_input_origin] [0]? – content01

+0

yeap ....每個都是我的朋友=) – content01

相關問題