【问题标题】:Get the keyname from a YAML configuration file从 YAML 配置文件中获取键名
【发布时间】:2020-04-08 14:01:06
【问题描述】:

我想在 YAML 配置文件中获取键的名称,如下所示 YAML 文件包含结构中的结构集合,组织有一个表示为符号的数字,该符号是键/类名。我需要找回这个符号

require 'yaml'
data = YAML.load(DATA)
data.organisations.each do |organisation|
  organisation #<struct language="nl", name="myname">
  # following line is what I need, I expect it to be :"121"
  organisation.class #<Class:0x00000004fd4248>
end
__END__
--- !ruby/struct
organisations: !ruby/struct
  :121: !ruby/struct
    language: nl
    name: organisationname

有人可以帮我检索结构的名称吗?

【问题讨论】:

    标签: ruby struct yaml


    【解决方案1】:

    我试了一下,发现了这个:

    data.organisations.members
    => [:"121"]
    

    我发现这个的方法(在其他情况下也很有用)如下:

    data.organisations.methods - Object.new.methods
    

    然后我尝试了所有看起来合理的方法。

    【讨论】:

      猜你喜欢
      • 2018-05-19
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      • 1970-01-01
      • 1970-01-01
      • 2016-02-05
      • 1970-01-01
      • 2020-11-10
      相关资源
      最近更新 更多