相关疑难解决方法(0)

如何在Grails中将特定日期格式作为JSON返回?

在Grails中,您可以使用JSON转换器在控制器中执行此操作:

render Book.list() as JSON
Run Code Online (Sandbox Code Playgroud)

渲染结果是

[
{"id":1,
 "class":"Book",
 "author":"Stephen King",
 "releaseDate":'2007-04-06T00:00:00',
 "title":"The Shining"}
]
Run Code Online (Sandbox Code Playgroud)

您可以通过在Config.groovy中进行设置来控制输出日期

grails.converters.json.date = 'javascript' // default or Javascript
Run Code Online (Sandbox Code Playgroud)

然后结果将是本机javascript日期

[
{"id":1,
 "class":"Book",
 "author":"Stephen King",
 "releaseDate":new Date(1194127343161),
 "title":"The Shining"}
]
Run Code Online (Sandbox Code Playgroud)

如果我想获得这样的特定日期格式:

"releaseDate":"06-04-2007"
Run Code Online (Sandbox Code Playgroud)

我必须使用'collect',这需要大量输入:

return Book.list().collect(){
  [
      id:it.id,
      class:it.class,
      author:it.author,
      releaseDate:new java.text.SimpleDateFormat("dd-MM-yyyy").format(it.releaseDate),
      title:it.title
  ]
} as JSON
Run Code Online (Sandbox Code Playgroud)

有更简单的方法吗?

grails groovy json converters

19
推荐指数
1
解决办法
1万
查看次数

标签 统计

converters ×1

grails ×1

groovy ×1

json ×1