YAMLファイルを継承していますので、プログラムでキーを追加または編集したいと思います。 YAML.loadメソッドを使用してYAMLをハッシュにロードしますが、YAML.dumpを使用してハッシュを保存すると、すべての継承情報が失われます。継承を使ってYAMLをルビに保存する
継承情報を失うことなくRubyでYAMLを編集する方法はありますか?
YAML例:
main:
prod: &prod
key1: true
key2: 50
key3: "abc"
prod_v_3_5: &prod_v_3_5
<<: *prod
key2: 100
prod_v_3_6: &prod_v_3_6
<<: *prod_v_3_5
key2: 150
コード例:
config = Api.get(id)
yaml = YAML.load(config)
yaml["main"][section].store(key, value)
config = YAML.dump(yaml)
Api.set(id, config)
を例に、編集したいファイルとあなたが試みたが失敗したいくつかのコードを共有してください。 –
[YAML仕様](http://yaml.org/spec/1.2/spec.html)には、継承は一度しか記述されていません。したがって、記事を紛失していることを除けば、 "私はYAMLファイルを継承しています"と言っても意味がありません。投稿を編集して継承の意味を含めてください。 – Anthon