gpt4 book ai didi

ruby-on-rails - 使用相似键加载和生成 Yaml 文件

转载 作者:数据小太阳 更新时间:2023-10-29 06:49:43 24 4
gpt4 key购买 nike

我有一个具有相似键的 yaml 文件文档:-

示例文件.yml

line:
title: line-name
department: transcription

input_formats:
- input_format:
name: company
required: true
valid_type: general
- input_format:
name: website
required: false
valid_type: url

生成 new_file.yml 后,键将按字母顺序排序:-

new_file.yml

line: 
department: transcription
input_formats:
-
input_format:
name: company
required: true
valid_type: general
-
input_format:
name: website
required: false
valid_type: url

title: line-name

打开 sample_file 和制作 new_file 的代码如下:-

require 'yaml'
require 'ya2yaml'


@file = YAML::load(File.open("/Users/manish/Desktop/yaml/sample_file.yml"))
@new_file = File.new("/Users/manish/Desktop/yaml/new_file.yml", "w+")
@new_file.syswrite(@file.ya2yaml(:hash_order => ['title','department','input_formats']))

我正在使用“ya2yaml”gem 生成 yaml 文件。为了获得与 sample_file.yml 中相同的顺序,我在这里使用了 hash_order @new_file.syswrite(@file.ya2yaml(:hash_order => ['title','department','input_formats']) ),但它不起作用。我怎样才能保留顺序?

最佳答案

最后我得到了订购问题的解决方案。

:hash_order 仅适用于顶级哈希。
因此它仅在我从 sample_file.yml 中删除“行”键时才有效。然后保留顺序。 :-

title: line-name
department: transcription

input_formats:
- input_format:
name: company
required: true
valid_type: general
- input_format:
name: website
required: false
valid_type: url

关于ruby-on-rails - 使用相似键加载和生成 Yaml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6371694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com