我有红宝石函数可以接受关键字参数以下形式:红宝石字符串转换为关键字参数
def get_customer_information(name: nil, dob: nil, age: nil, state: nil)
... query db based on supplied parameters
end
用户可以指定1到所有的关键字参数。还有一个命令行界面,其中用户可以通过调用命令行调用并传入的以下形式的信息的键/值利用此功能:
>GetCustomerInformation name=myName, dob=myDOB
的参数被解析和分离成键和值。但是,我需要知道哪个关键字参数与从命令行提供的输入相关联。有没有一种方法可以将字符串转换为关键字参数(例如,将名称转换为名称:),这样我就不需要对每个参数执行字符串比较以确定与哪个关键字参数相关联,从而导致表单调用:
get_customer_information(name.to_keyword myName, dob.to_keyword myDOB)
或者这是不可能在红宝石?
寻找'.to_sym'? http://ruby-doc.org/core-2.2.2/String.html#method-i-to_sym –