我正在从ruby向yaml文件写入数据,我经常在文件中点缀别名.像:
- &id001
somekey: somevalue
- *id001
Run Code Online (Sandbox Code Playgroud)
在我来说,我使用的YAML文件来帮助可读性和现有的数据只是在文件名添加到值|分隔值没有钥匙.如何防止使用别名写入yaml文件?
[编辑]
为了进一步说明,这里是数据类型和问题的一个例子.
原始数据如下:
Ham|2.00|1
Eggs|0.50|12
Milk|2.00|2
Run Code Online (Sandbox Code Playgroud)
我已经编写了一个ruby脚本来将其转换为yaml,它也会查看sql文件以获取相应的名称.yaml文件看起来像:
---
- !omap
- name: Ham
- &id001
price: 2.00
- quantity: 1
- !omap
- name: Eggs
- price: 0.50
- quantity: 12
- !omap
- name: Milk
- *id001
- quantity: 1
Run Code Online (Sandbox Code Playgroud)
这会导致大型数据集出现问题,因为别名可能彼此无法接近,因此难以阅读.
我想测试用户是否经过身份验证,并根据状态显示"登录"或"注销"链接.
到目前为止我有
$maybe muid <- maybeAuthId
<a href=@{AuthR LogoutR} >Logout
$nothing
<a href=@{AuthR LoginR} >Login
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:
Couldn't match expected type `Maybe v0'
with actual type `GHandler s0 m0 (Maybe (AuthId m0))'
In the first argument of `Text.Hamlet.maybeH', namely `maybeAuthId'
Run Code Online (Sandbox Code Playgroud)