我剛纔的Submitting multiple forms in Rails回答了這導致了另一個問題。在我的表單中我有以下的(有相當多的):Rails窗體格式化
= hidden_field_tag :event_id, :value => @event.id
.control-group
= label_tag :title
.controls
= select(:registration, "registrations[][title]", Registration::TITLE)
和最後一行返回:
「註冊」=> [{ 「標題」=> { 「登記」 => 「先生」},
,而不是預期的:
「標題」=> 「MR」
我試着:
= select(:registration, "registrations[][title]", Registration::TITLE)
它返回:
未定義的方法`註冊[] [標題]」爲#
並且還嘗試:
= select("registrations[][title]", Registration::TITLE)
返回:
錯誤的參數數目(2 3)
看看下面的參數,事件(_id)是唯一的。有一次,則:標題奇怪開始,任何想法是什麼問題可能是?
{"utf8"=>"✓",
"authenticity_token"=>"BQXm5fngW27z/3Wxy9qEzu6D8/g9YQIfBL+mFKVplgE=",
"event_id"=>"7",
"registrations"=>[{"title"=>{"registration"=>"Mr"},
"first_name"=>"Name1",
"last_name"=>"Surname1",
"company_name"=>"Company1",
"designation"=>"Designation1",
"landline"=>"Landline1",
"cell"=>"Cell1",
"email"=>"[email protected]",
"member"=>{"registration"=>"No"},
"dietary"=>{"registration"=>"None"},
"specify"=>"None"},
{"first_name"=>"Name2",
"last_name"=>"Surname2",
"company_name"=>"Company2",
"designation"=>"Designation2",
"landline"=>"Landline2",
"cell"=>"Cell2",
"email"=>"[email protected]",
"member"=>{"registration"=>"No"},
"dietary"=>{"registration"=>"None"},
"specify"=>"None",
"title"=>{"registration"=>"Mr"}},
{"first_name"=>"Name3",
"last_name"=>"Surname3",
"company_name"=>"Company3",
"designation"=>"Designation3",
"landline"=>"Landline3",
"cell"=>"Cell3",
"email"=>"[email protected]",
"member"=>{"registration"=>"No"},
"dietary"=>{"registration"=>"None"},
"specify"=>"None"}],
"commit"=>"Submit registrations"}
請不就是:飲食和:標題:成員以同樣的方式格式化。提前感謝你的幫助!
編輯
所以通過text_field_tag提交到哈希是一個簡單的是:
= text_field_tag 「註冊[] [FIRST_NAME]」
但問題與我hidden_field_tag進來和select_tag。
它添加壞值,例如:
"title"=>{"registrations"=>"Mr"}
,基本上看來我需要找到一個更好的方法對這些值添加到哈希值。我會繼續嘗試找到一個解決方案,並會在這裏發佈它,除非有人打我。
感謝您回覆我,我試過了您的建議,但仍然沒有運氣。問題似乎是我將我的值傳遞給哈希。請參閱修改主帖子。 – user1224344