2011-07-16 32 views
0

進出口新的Rails中,我嘗試執行的ActionController的創建方法多次內的保存方法插入多個值回報率ActiveRecord的保存方法

def create 

    @pin = Pin.new(params[:pin]) 
    i = 1 

    while i < 10 
    if @pin.save 
    end 
    end 

    redirect_to @pin 

end 

這工作,但只插入一條記錄 沒有約束上強制執行記錄在我的數據庫中的唯一性。 請問我該如何糾正?

+0

爲什麼downvote? Upvoted否定。 –

+0

順便說一句,你在這裏有一個無限循環,因爲你永遠不會在循環中增加我。 – Thilo

+0

Opps,省略了什麼,而在這裏複製代碼,這不是在原來的omgited – dev

回答

3

一個AR對象映射到一行。您需要爲要添加的每一行創建新對象。

類似的東西:

10.times do 
    pin = Pin.new(params[:pin]) 
    pin.save 
end 

10.times do 
    Pin.create(params[:pin] 
end 

create方法創建一個AR對象並在數據庫中保存它。 但是,您不能重定向到10個對象。

+0

按預期工作 – dev

0

你應該create_multiple方法擴展您的資源,併發送PARAMS爲陣,看細節here