2012-10-19 69 views
0

在我的項目,我有這個下面的代碼如何通過數組循環和保存數據

scenario = Scenario.new 
scenarioTranslation = ScenarioTranslation.new 

params[:title].each do | index | 
     scenario.position = last_position + 1 
     scenario.analysis_id = scenarioTranslation.scenario_id 
     scenario.save 
    end 

這裏params[:title]是一個數組,我通過數組元素的數量必須循環和保存方案

目前它只保存一次。誰能告訴我如何解決這個錯誤

感謝

+0

究竟什麼是你想要做什麼?你能提供一些背景嗎?可能可以通過更好的方式實現。 – Agis

回答

3

我是有點困惑你的代碼應該怎麼做,但我覺得這是你所需要的:

params[:title].each_with_index do | title, index | 
     scenario_translation = ScenarioTranslation.create 
     scenario = Scenario.new(:position => (last_position + 1), :analysis_id => scenario_translation.id) 
     scenario.save 
end 
+0

謝謝我正在檢查 – Mujahid

+0

非常感謝,它的工作:) – Mujahid

+0

沒問題,....。 – davidb

1

循環的每次迭代,先創建一個scenarioTranslation對象,然後創建一個場景對象,將該數組索引設置爲場景對象的位置,然後保存場景對象。

params[:title].each_with_index do | title, index | 
    scenarioTranslation = ScenarioTranslation.create 

    scenario = Scenario.new 
    scenario.position = index 
    scenario.analysis_id = scenarioTranslation.scenario_id 
    scenario.save 
end