我正在尝试将变量名称添加到rails的method_name中。我收到错误消息。
**控制器动作** ===================== def my_action(state) method _#{state} end **模型方法** ====== ============== def method_start 结束 def method_end 结束
如何用变量名调用方法我没有得到。
用于Object.send
按名称调用方法。例如,
def my_action(state)
if [:start, :end].include?(state)
model.send("method_#{state}")
end
end
确保验证state
变量的安全性。 Object.send
可以调用任何方法,包括私有方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句