gpt4 book ai didi

ruby-on-rails - 如何将字符串评估/常量化为方法,然后将参数传递给它

转载 作者:数据小太阳 更新时间:2023-10-29 07:42:11 26 4
gpt4 key购买 nike

给定:

s = "foo_bar_path"

如何评估或常量化 s,并将参数传递给它,例如我的最终结果将等同于:

foo_bar_path(@myvar, @foobar)

我正在尝试 eval(s).send 但这似乎不起作用。 constantize 似乎只适用于类?

最佳答案

您只需使用 send method (或 public_send 取决于您的需要)在适当的对象上:

some_object.send(s, @myvar, @foobar)

或者如果你想调用自己的方法:

self.send(s, @myvar, @foobar)

文档上写着“symbol”,但是 send 很乐意在字符串中获取方法名称。

关于ruby-on-rails - 如何将字符串评估/常量化为方法,然后将参数传递给它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7591370/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com