我實現基於瑞安貝特的[總是優秀] Railscast,#52,更新通過複選框形式,http://railscasts.com/episodes/52-update-through-checkboxes從形式
在我的情況下傳遞一個數組的數組,實際上,我想通過通過選擇每個複選框的ID數組。
在我的形式重點線看起來是這樣的,
<td"><%= check_box_tag "sales_ids[]", batch["sales_ids"] %></td>
批[「sales_ids]本身就是一組ID,而我希望的結果是所有的檢查項目的數組(每個都代表一個ID數組)
如果我從表單中檢查個人 batch [「sales_ids」],那麼我可以確認它確實是一個數組,例如[3907,3908 ,3909](請記住,我想傳遞這些項目的數組,每行檢查)
從處理表單看起來像這樣的方法中的關鍵線,
params[:sales_ids].each { |batch| Sales.update_all(["code=?", 99], :id => batch) }
此代碼,再次基於所述Railscast示例的目的,是要迭代陣列的陣列上,並更新每個子-idray的ids。
當我檢查接收到的陣列,我看到,[「5412」,「3907 3908 3909」,「2452」]
子陣列不是作爲數組處理,並且(原因我不不明白)每個'substring'(在本例中爲「5412」,「3907」,「2452」)的第一項被更新。
看來,傳遞的子數組實際上不是一個數組,或者其他東西是錯誤的。
我很感激如何傳遞和接收這些ID作爲數組數組的幫助。謝謝。
這是一種享受,正如你寫的一樣。謝謝你,非常感謝。 – Snips 2012-01-04 10:59:34