假设我有一个带命名参数(foo和bar)的ruby函数(func),我可以通过提供其中一个或两个参数来调用它,如下所示:
func(foo: "whatever")
func(bar: "whatever")
func(foo: "whatever", bar: "whatever")
我需要的是一种通过传递参数名称的字符串来调用此函数的方法:
name = "foo"
func(name: "whatever")
我读到了to_sym,但不知道如何使用它。至少这是行不通的:
name = "foo"
func(name.to_sym: "whatever")
有办法吗?
- 谢谢-谢谢
2条答案
按热度按时间oxcyiej71#
在Ruby 3.1中似乎可以工作
zqdjd7g92#
您可以使用下列项目:
名称将被插入并转换为符号