ruby-on-rails – 如何将字符串eval / constantize到方法,然后将
发布时间:2020-12-17 01:49:19 所属栏目:百科 来源:网络整理
导读:鉴于: s = "foo_bar_path" 我如何评估或限制s,并将参数传递给它,例如我的最终结果将相当于: foo_bar_path(@myvar,@foobar) 我正在尝试eval(s).但这似乎不起作用. constantize似乎只适用于类? 解决方法 您只需在相应的对象上使用 send method(或 public_se
鉴于:
s = "foo_bar_path" 我如何评估或限制s,并将参数传递给它,例如我的最终结果将相当于: foo_bar_path(@myvar,@foobar) 我正在尝试eval(s).但这似乎不起作用. constantize似乎只适用于类? 解决方法
您只需在相应的对象上使用
send method(或
public_send ,具体取决于您的需要):
some_object.send(s,@myvar,@foobar) 或者如果你想自己调用一个方法: self.send(s,@foobar) 文档说“符号”,但发送同样乐于在字符串中获取方法名称. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |