Rails 3.2.5 ではdatetime_select
、内部配列内で多くの結果を収集する方法がわかりません。params
たとえば、私がこれを持っている場合
<input type="text" name="poll[options][]">
<input type="text" name="poll[options][]">
次に、params には、すべてのフィールドparams[:poll][:options]
の配列が含まれます。options
これが私のものdatetime_select
です:
datetime_select "scheduler", "options", {
add_month_numbers: true,
start_year: Date.today.year,
default: DateTime.now + 1.day,
datetime_separator: "<span>at</span>",
time_separator: "<span>:</span>",
leading_zeros: true
}
datetime_select
フォームで何度も繰り返したい。
モデル/フィールドパラメータは、結果の配列を収集するために、"scheduler[]"
またはそのようなものを仕上げることを許可していないようです。"options[]"
datetime_select
にある配列内に多くの日時オブジェクトが表示されるようにするにはどうすればよいparams[:scheduler][:options]
ですか?
アップデート
これが私が現在それをハッキングしている方法です:
datetime_select_tags = datetime_select "scheduler_selects", "", add_month_numbers:true, start_year:Date.today.year, default:DateTime.now + 1.day, datetime_separator:"<span>at</span>", time_separator:"<span>:</span>", leading_zeros:true
datetime_select_tags.gsub! 'name="scheduler_selects', 'name="scheduler[options][]'
これにより、次のようなタグが生成されます
<select id="scheduler_selects__1i" name="scheduler[options][][(1i)]">
params
正しく含まれています
"scheduler" => {
"options" => [
{"(1i)"=>"2012", "(2i)"=>"6", "(3i)"=>"13", "(4i)"=>"15", "(5i)"=>"24"},
{"(1i)"=>"2012", "(2i)"=>"6", "(3i)"=>"13", "(4i)"=>"15", "(5i)"=>"24"}
],
},
一意の HTML id 属性も生成するために、おそらくこれをヘルパーでラップしようとします。ただし、これが長期的な解決策ではないことを本当に望んでいます。