約1年間Railsエンジニアやってて初めてrake task書いた。
その時のめも。
to_a
メソッドを使う
namespace :test_task do
desc '可変長引数を受け取るtask'
task :hoge, ['huga'] => :environment do |_task, args|
p args.to_a
p args.huga
end
end
実行する。
$ bundle exec rake test_task:hoge[1,2,3,4]
["1", "2", "3", "4"]
"1"
args
はHash
ではなくRake::TaskArguments
であり、Rake::TaskArguments
のインスタンスメソッドである
to_a
を使うことで引数の値をすべて取得する事ができる
- リファレンス
[http://www.rubydoc.info/gems/rake/12.0.0/Rake/TaskArguments#to_a-instance_method]