使用Ruby on Rails读取,更新和添加到yml文件

时间:2014-05-13 06:26:03

标签: ruby-on-rails ruby ruby-on-rails-4 yaml

我有一个yml文件..它的结构如下。

en:
  hello: "Hello world"
  menu:
    profile: "My Profile"
    my_risk: "My Risk"
  header:
    profile: "My Profile"
    my_risk: "My Risk"

当我能够使用

获取yml文件的值时
yml_content = YAML.load_file('config/locales/en.yml')
p yml_content['en']

我想知道的是如何单独获取profile menu en内的值my_abc: "ABC" 另外我想知道我们是否可以使用ruby在menu内添加{{1}}这样的新对象。

提前致谢

1 个答案:

答案 0 :(得分:3)

当您解析YAML时,您会得到一个哈希。因此,要进入内部元素,您需要做的就是:

p yml_content['en']['menu']['profile']
# => "My Profile"

此外,由于它是一个哈希,你需要做的就是添加,只需为它分配一个新的键值:

yml_content['en']['menu']['my_abc'] = "ABC"