2014-06-13 54 views
2

我如何通過浮點數在rake任務如何將float number作爲rake任務參數傳遞?

desc "example rake" 
task :to_store_number, [:number1, :number2] do |t, args| 
    a = "#{args[:number1].to_f}" * "#{args[:number2].to_f}" 
    puts a 
end 

的參數,它提供了錯誤「類型錯誤:字符串的隱式轉換成整數」

+0

錯誤發生在哪裏?哪條線?你的代碼在這裏工作正常。 –

+0

@ArieShaw,我剛剛給出了示例代碼,'#{args [:number] .class}'返回字符串,如何在rake中傳遞float數字而不是字符串? –

+0

你不能。命令行參數總是以'String'形式傳入。你需要手動解析它們到你想要的格式('args [:number] .to_f')。 –

回答

1

參數傳遞喜歡ARGS [:數量],而不是作爲「#{args [:number]}」固定它

desc "example rake" 
task :to_store_number, [:number1, :number2] do |t, args| 
    a = args[:number1].to_f * args[:number2].to_f 
    puts a 
end 
相關問題