Я пишу задачу Rake, и я хочу передать массив как один из аргументов. Вот как я его сейчас.
task :change_statuses, :ids, :current_status, :new_status do |task, args|
puts "args were #{args.inspect}"
end
Я попытался выполнить задачу следующими способами:
# First argument as array
rake "change_statuses[[1,2,3], active, inactive]"
# First argument as string
rake "utility:change_account_statuses['1,2,3', foo, bar]"
Мой ожидаемый вывод:
args were {:ids=> [1,2,3], :current_status=> 2 , :new_status=> 3}
Однако мой фактический вывод в каждом случае:
args were {:ids=>"[1", :current_status=>"2", :new_status=>"3]"}
Как передать массив в задачу Rake?