0
私は単一のフォームから複数のデータベースレコードを作成するためのクリーンなソリューションを探しています。 IDだけが明らかに異なるはずです。howto同じ値を持つ単一のフォームで複数のレコードを作成する
テンプレートの種類として一度に100以上のレコードを作成できるようにするには、この関数が必要です。
したがって理想的には、ユーザーは入力した値で作成したいレコードの数を入力できます。
私は単一のフォームから複数のデータベースレコードを作成するためのクリーンなソリューションを探しています。 IDだけが明らかに異なるはずです。howto同じ値を持つ単一のフォームで複数のレコードを作成する
テンプレートの種類として一度に100以上のレコードを作成できるようにするには、この関数が必要です。
したがって理想的には、ユーザーは入力した値で作成したいレコードの数を入力できます。
イテレータを使用します。例:この例では、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
ビューが必要です。
あなたのDBはMySQL、SQL DBまたはOracleですか? –
"少し"遅く、申し訳ありません。それはpostgresqlです。 – blissini