0

这是我发现可以将传递参数传递给哈希的符号键的一种方法。

task :test,:server do |t,args|
  puts args.server
  puts end_points[:"#{args.server}"]
end

end_points 的定义

 end_points = { :dev ==> "http://mysite.com" }

这就是我称之为 rake 任务的方式:

rake test[dev]

是否有更简洁的方法将 args.server 作为 end_points 的键传递。

4

2 回答 2

2

要将字符串转换为符号,请使用 String.to_sym 方法。这应该会让您的实现更加简洁。

于 2012-09-19T22:41:57.323 回答
2

“更清洁”是一个视角问题,但puts end_points[args.server.to_sym]如果您不喜欢所有标点符号并且只想使意图更清晰一些,您可以编写。

于 2012-09-19T22:41:58.223 回答