渲染为浮点值的零的JSON剪切

时间:2015-01-15 23:57:43

标签: json grails

我有一个这样的地图,它必须作为JSON呈现给输出。

def formatedResult =  [ 
    results:[
        [ Name:foo, sex:m, salary:171.900 ], 
        [ Name:bar, sex:m, salary:171.900 ]
    ]
]

我将此回复呈现为

withFormat {
    json {
        render formatedResult as JSON
    }
}

产生以下结果。

{
    results: [{
        Name: "foo",
        sex: "m",
        salary: 171.9
    }, {
        Name: "bar",
        sex: "m",
        salary: 171.9
    }]
}

但是从薪水中削减零。我应该怎么做才能让JSON没有剪掉零?

1 个答案:

答案 0 :(得分:0)

如果你正如你的例子那样对你的价值进行硬编码,请按照以下方式进行编码:

def formatedResult =  [ 
    results:[
        [ Name:foo, sex:m, salary:"171.900" ], 
        [ Name:bar, sex:m, salary:"171.900" ]
    ]
]

或者,如果您从变量使用toString()方法获取它们以将它们转换为字符串。

def formatedResult =  [ 
    results:[
        [ Name:foo, sex:m, salary:salary.toString()], 
        [ Name:bar, sex:m, salary:salary.toString()]
    ]
]

最后你的渲染:

withFormat {
    json {
        render formatedResult as JSON
    }
}