我正在尝试调用一个带有 n 个参数的方法,并将参数作为散列传递给调用带有 n 个参数的方法的方法,但散列看起来就像另一个参数。如何取消对参数的哈希处理,以便正确调用该方法?
一些代码,因为这很难用文字来解释:
我要调用的方法:
method(p[:method]).call(p[:action], p[:params])
p[:method]
在这种情况下是:post
p[:action]
is :create
p[:params]
is{:my_object => {my object's params}}
所以,拆开来看,它看起来像这样:
post(:create, {:my_object => {my object's params}})
# current
但它应该是什么样子,是这样的:
post(:create, :my_object => {my object's params})
#desired
如何更改
method(p[:method]).call(p[:action], p[:params])
才能获得所需的方法调用?