我能够传递如下参数:
desc "Testing args"
task: :hello, :user, :message do |t, args|
args.with_defaults(:message => "Thanks for logging on")
puts "Hello #{args[:user]}. #{:message}"
end
Run Code Online (Sandbox Code Playgroud)
我还能够为Rails应用程序加载当前环境
desc "Testing environment"
task: :hello => :environment do
puts "Hello #{User.first.name}."
end
Run Code Online (Sandbox Code Playgroud)
我想做的是能够拥有变量和环境
desc "Testing environment and variables"
task: :hello => :environment, :message do |t, args|
args.with_defaults(:message => "Thanks for logging on")
puts "Hello #{User.first.name}. #{:message}"
end
Run Code Online (Sandbox Code Playgroud)
但这不是一个有效的任务调用.有谁知道我怎么能做到这一点?