我想使用类似的东西
hash.pick('prop1', 'prop2')
与使用下划线选择方法相同(获取对象/哈希的属性并基于它们创建新的哈希)
所以它看起来像这样
{ prop1: 'asdf', prop2: 'qwer', prop3: 'uiop' }.pick( 'prop2', 'prop3' )
# equals { prop2: 'qwer', prop3: 'uiop' }
我想使用类似的东西
hash.pick('prop1', 'prop2')
与使用下划线选择方法相同(获取对象/哈希的属性并基于它们创建新的哈希)
所以它看起来像这样
{ prop1: 'asdf', prop2: 'qwer', prop3: 'uiop' }.pick( 'prop2', 'prop3' )
# equals { prop2: 'qwer', prop3: 'uiop' }
对于 Ruby 2.5 及更高版本,使用内置的 hash.slice 方法。
{ prop1: 'asdf', prop2: 'qwer', prop3: 'uiop' }.slice(:prop2, :prop3)
这种方法最初是在 Rails (ActiveSupport) 中引入的,因此它可以在 Rails 环境中的早期 Ruby 版本中使用。
使用哈希切片方法,如下所示:
hash.slice(:prop1, :prop2)