颠簸条件规范
Jolt conditional spec
我想要一个条件转换,如果输入中特定字段的值符合我的条件,我需要在输出中添加 属性。以下是我需要的输入和输出。
输入
{
"attr": [
{
"name": "first",
"validations": [
{
"type": "Required",
"value": true
}
]
},
{
"name": "last",
"validations": [
{
"type": "lenght",
"value": "10"
}
]
},
{
"name": "email",
"validations": [
{
"type": "min",
"value": 10
}
]
}
]
}
输出
{
"out" : [
{
"name" : "first",
"required" : "yes"
},{
"name" : "last"
},{
"name" : "email"
}
]
}
所以我能够得到条件,但在条件内部,& 和 @ 对应于输入而不是输出。任何人都可以帮助我进行转型。以下是我到目前为止编写的规范。
[
{
"operation": "shift",
"spec": {
"attr": {
"*": {
"name": "out.&1.name",
"validations": {
"*": {
"type": {
"Required": {
"@(2,value)": "out.&1.req"
}
}
}
}
}
}
}
}
]
此规范执行转换。
[
{
"operation": "shift",
"spec": {
"attr": {
"*": {
"name": "out[&1].name",
"validations": {
"*": {
"type": {
"Required": {
"#yes": "out[&5].required"
}
}
}
}
}
}
}
}
]
但是,我认为您的意思是获取 "value" : true 是 "Required" 的同级: true,而不是让输出为 "yes".
如果是这样交换这个位。
"Required": {
"@(2,value)": "out[&5].required"
}
我想要一个条件转换,如果输入中特定字段的值符合我的条件,我需要在输出中添加 属性。以下是我需要的输入和输出。
输入
{
"attr": [
{
"name": "first",
"validations": [
{
"type": "Required",
"value": true
}
]
},
{
"name": "last",
"validations": [
{
"type": "lenght",
"value": "10"
}
]
},
{
"name": "email",
"validations": [
{
"type": "min",
"value": 10
}
]
}
]
}
输出
{
"out" : [
{
"name" : "first",
"required" : "yes"
},{
"name" : "last"
},{
"name" : "email"
}
]
}
所以我能够得到条件,但在条件内部,& 和 @ 对应于输入而不是输出。任何人都可以帮助我进行转型。以下是我到目前为止编写的规范。
[
{
"operation": "shift",
"spec": {
"attr": {
"*": {
"name": "out.&1.name",
"validations": {
"*": {
"type": {
"Required": {
"@(2,value)": "out.&1.req"
}
}
}
}
}
}
}
}
]
此规范执行转换。
[
{
"operation": "shift",
"spec": {
"attr": {
"*": {
"name": "out[&1].name",
"validations": {
"*": {
"type": {
"Required": {
"#yes": "out[&5].required"
}
}
}
}
}
}
}
}
]
但是,我认为您的意思是获取 "value" : true 是 "Required" 的同级: true,而不是让输出为 "yes".
如果是这样交换这个位。
"Required": {
"@(2,value)": "out[&5].required"
}