[英]How to style to_yaml correctly
I want to store some configuration information about a few apps so I can make an 'app drawer'. 我想存储一些有关一些应用程序的配置信息,以便创建一个“应用程序抽屉”。 I store the info in an array that looks like this - 我将信息存储在一个看起来像这样的数组中-
[["page_view", {"path"=>"somepath/asdf/asdf", "name"=>"Page View"}], ["outage_impact", {"path"=>"newpath/asdf/asdf", "name"=>"Outage Impact"}]]
but when I use to_yaml
on this array I get this output: 但是当我在此数组上使用to_yaml
,得到以下输出:
---
- - page_view
- path: somepath/asdf/asdf
name: Page View
- - outage_impact
- path: newpath/asdf/asdf
name: Outage Impact
Ideally I want something more like this: 理想情况下,我想要这样的东西:
page_view
path: somepath/af/asdf
name: blah
outage_impact
name: blah
path: adsf/adsf/asdf
I tried finding more info on the to_yaml method but it was few and far between. 我试图找到有关to_yaml方法的更多信息,但它之间相距甚远。 I think my array might need to be formatted differently but I have been guessing and checking for awhile to no avail. 我认为我的数组可能需要采用不同的格式,但我一直在猜测并检查了一段时间而无济于事。
Should I even be using the to_yaml method at all or would another method work better? 我是否应该完全使用to_yaml方法,否则其他方法会更好吗?
Converting it to a hash and then using to_yaml
will give a similar output to your example (but with ---
at the start) 将其转换为哈希值,然后使用to_yaml
将为您的示例提供类似的输出(但开头是---
)
arr = [["page_view", {"path"=>"somepath/asdf/asdf", "name"=>"Page View"}], ["outage_impact", {"path"=>"newpath/asdf/asdf", "name"=>"Outage Impact"}]]
puts Hash[*arr.flatten].to_yaml
gives: 给出:
---
page_view:
path: somepath/asdf/asdf
name: Page View
outage_impact:
path: newpath/asdf/asdf
name: Outage Impact
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.