[英]grails 3 - get child domain objects
我已经看过这个Grails获取子域对象,但是我仍然迷路。
我已经添加到conf / application.yml
converters:
encoding: UTF-8
grails.converters.json.default.deep: true
但是当我进入某个域时,我仍然会
[〜] $ curl http:// localhost:8080 / request / 2 {“ id”:2,“ stream”:{“ id”:2},“ release_label”:“ ABC_4.3”,“ date_created”:“ 2017-08-21T13:06:27Z”, “ENVS”:[{ “ID”:1}], “状态”: “初始化”}
我希望将流和envs扩展为提供所有记录,而不仅仅是ID。
所以Request,groovy是
并且Stream.groovy是
package test
import grails.rest.*
class Stream {
String name
String feedgroup
String description
UnixGroup unixgroup
String swid
boolean powercentre = false
String latest_release
static hasMany = [envs: Env]
static constraints = {
name blank:false, unique: true
}
}
package test
import grails.rest.*
class Request {
Date date_created = new Date()
Date date_completed
String status = "init"
String release_label
Stream stream
static hasMany = [envs: Env]
static constraints = {
date_completed nullable: true
}
static searchable = {
only = [ 'stream', 'status' ]
}
}
我正在使用Grails 3.30。
grails.converters.json.default.deep对Grails 3仍然有效吗? 以及如何使用它。
在grails松弛页面上,我被告知,当应用程序配置文件为rest-api时,不使用转换器。
相反,应使用JSON视图。 在渲染中,添加一个深选项:true
例如
json g.render(book, [deep:true])
书在哪里
有关更多信息,请参见http://views.grails.org/latest/#_rendering_domain_classes
grails.converters.json.default.deep
应该改为:
json.default.deep
因为您已经在grails.converters块中。
所以它应该看起来像:
converters:
encoding: UTF-8
json.default.deep: true
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.