json - Grails-将原始json拆分为一个对象

标签 json rest grails

我正在尝试从网址中接收json,然后将其显示在页面上的g:select中,并且看起来一切正常,除了每个对象都显示为原始json(例如{id=1, regionCode=EC, regionName=EasternCape}而不是带有'id','name',等等。这是我要拆分的json:

[{"regionCode":"EC","regionName":"Eastern Cape","id":1},
{"regionCode":"FS","regionName":"Free State","id":2},
{"regionCode":"GA","regionName":"Gauteng","id":3},
{"regionCode":"KZN","regionName":"Kwa-Zulu Natal","id":4},
{"regionCode":"LI","regionName":"Limpopo","id":5},
{"regionCode":"MP","regionName":"Mpumalanga","id":6},
{"regionCode":"NW","regionName":"North West","id":8},
{"regionCode":"NC","regionName":"Northern Cape","id":7},
{"regionCode":"WC","regionName":"Western Cape","id":9}]

这是我用来接收上述json的服务:
class GetRegionService {

def getRegion(){

    try{
        //I'm not using the actual URL in this example
        def regionList = new JsonSlurper().parseText(new URL('http:url/regions/list/ZA/').text)
        return regionList
    }catch (all){
        all.printStackTrace()
        return false
    }
}

}

这是我的 Controller 将json放在gsp页面上的方式:
class MainController {

def getRegionService

    def index() {

        def regions = getRegionService.getRegion()

        [regions: regions]

    }
}

这是显示选择内容的html代码段:
<div class="jumbotron">
    <label for="setRegion" style="margin: 0 10px 0 50px">Region: </label>
    <g:select name="setRegion" from="${regions}"/>
</div

最佳答案

我想到了。问题出在我的html中。选择应该看起来像这样:

<g:select name="setRegion" from="${regions}" optionValue="regionName" optionKey="regionCode"/>

关于json - Grails-将原始json拆分为一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36471379/

相关文章:

java - jackson :将时代反序列化为 LocalDate

javascript - 在 GET 请求中仅发送部分数据

java - Spring 框架和 RestTemplate : not being able to consume REST Service

grails - Grails 2.3.8 Stacktrace不显示我的任何调用代码

grails - Grails 2.1在JBoss上禁用log4j配置

javascript - 在我的网站中显示来自 MongoLab 的数据

c# - 如何从 C# 字典创建 JSON(类似于 PHP)

c# - REST Web 服务 Web API - 基于多个实体创建端点

java - Grails:无法从 wsdl2java 导入类

javascript - 动态表到 JSON