使用哈希应用方法。

时间:2014-03-26 05:24:36

标签: ruby activesupport

我有一个ruby对象,比如说... myobject和一个哈希值,myhash值为{op1:'某些',op2:' something2' }。

ruby​​中是否有一种方法可以让我这么做,

myobject.the_method(myhash)

这样就好像我一样,

myobject.op1 'something'
myobject.op2 'something2'

这可以使用myhash.each和myobject.send完成,但是有一种方法可以做到这一点吗?可以接受Active Support解决方案。

1 个答案:

答案 0 :(得分:3)

Active Support中没有一种方法可以执行此操作。我建议eachsend

hash.each do |method, arg|
  obj.public_send(method, arg)
end