2012-09-19 22 views
0

以下是我发现的一种方法,我可以将传递参数传递给哈希的符号键。 end_points红宝石将参数传递给符号

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

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

定义这是我如何把这个rake任务:

rake test[dev] 

是否有args.server通过为end_points的键更清洁的方式。

回答

2

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

2

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