2012-02-13 14 views
0

私は単一のフォームから複数のデータベースレコードを作成するためのクリーンなソリューションを探しています。 IDだけが明らかに異なるはずです。howto同じ値を持つ単一のフォームで複数のレコードを作成する

テンプレートの種類として一度に100以上のレコードを作成できるようにするには、この関数が必要です。

したがって理想的には、ユーザーは入力した値で作成したいレコードの数を入力できます。

+0

あなたのDBはMySQL、SQL DBまたはOracleですか? –

+0

"少し"遅く、申し訳ありません。それはpostgresqlです。 – blissini

答えて

0

イテレータを使用します。例:この例では、2つのパラメータ、リソースの属性が含まれ:object、および作成するレコード数を指定:countを期待

def create_many 
    count = params[:count].to_i 
    # count within reasonable limits, check if object will validate 
    if (1..100) === count && Object.new(params[:object]).valid? 
    count.times { Object.create(params[:object]) } # <= the iterator 
    redirect_to my_custom_view # <= custom 'show' view 
    else 
    render :text => "Couldn't do it." # <= failure message 
    end 
end 

新しく作成されたすべてのレコードを取得して表示するには、カスタムshowビューが必要です。

関連する問題