我是YAML的新手,并试图做一个YAML阻止但我收到以下错误:
扫描块映射时:预期,但发现:#< ScalarToken值=“内容:|这是测试测试测试的测试非常好的测试是啊是的测试测试测试”Style =“None”> (第8行,第1栏)
虽然在没有|的情况下工作正常,但我希望保留空白。
YAML文件(Home.yml):
---
section:
title: About this site
content: |
This is a test of a test test test test
A very very good test
A test of test test
section:
title: Source code
content: |
Licens:: BSD
Link:: Here
Foo
...
Ruby代码:
home = YAML.load_file('data/Home.yml')
home.inspect
答案 0 :(得分:1)
您使用的是哪个YAML解析器? Ruby 1.8.7解析器和1.9中的解析器都解析了你问题中的YAML。
还有麻烦。你给出的语法是这样的哈希:
{
'section' => {
'title' => "About this site",
'content => ...
}
'section' => {
'title' => 'Source code',
'content' => ...
}
}
但是,你不能有两个哈希键是相同的。会发生什么是最后一个获胜。你可能正在寻找一系列哈希。为此,请使用以下YAML语法:
---
-
section:
title: About this site
content: |
This is a test of a test test test test
A very very good test
A test of test test
-
section:
title: Source code
content: |
Licens:: BSD
Link:: Here
Foo