2011-05-27 9 views
0

私が日付を作成するための3つのフィールドを持つページを作成するdate_selectを使用しました、そしてので、私のセッションは、その中に次のフィールドで終わり:3から日付を再構築するための良い方法は何Railsのデコードでセッションが終了しましたか?

{"CompanyUk"=>{"company_number"=>"12345", 
"incorporation_date(1i)"=>"2011", 
"incorporation_date(2i)"=>"5", 
"incorporation_date(3i)"=>"27"}} 

別々のフィールド?明らかに、私はそれらを1つずつ取り出して再構成することができますが、それは可能なことを超える余分なコードのようです。

答えて

1
((1..3).map { |i| session['CompanyUk']["incorporation_date(#{i}i)"] } * '/').to_date 
+0

[OK]を、おかげで、それはあまりにも苦痛ではありません。私はヘルパー機能があることを望んでいました。 – Marcin

0

私が持っていた:

datemap = params["CompanyUk"].select {|k,v| k.start_with? "incorporation_date"} 
inc_date = Date.new(*(datemap.values.map {|x| x.to_i})) 

を森のソリューションよりもかなり複雑ですどちら。

また、森のソリューションに基づいていますが、文字列の連結回避:

Date.new *((1..3).map { |i| params['CompanyUk']["incorporation_date(#{i}i)"].to_i }) 
関連する問題