我有这些域:
class ChildPlacementFile{
.....
static hasMany = [children : Client]
static belongsTo = [father : Client, mother: Client]
Client child
...other fields etc.
}
class Client{
String firstName
String lastName
....etc etc.
}
我的客户要求我允许在表单中进行多次保存。所以我创建了一个看起来像这样的服务。
def saveChildren(ChildPlacementFile childPlacementFileInstance, params){
def childrenList = []
def errorList = []
params.rowId = [params.rowId].flatten()
params.child = [params.child].flatten()
params.rowId.eachWithIndex {child, i ->
Client childInstance = Client.get(params.child[i])
if(childInstance){
childrenList.add(childInstance)
childPlacementFileInstance?.addToChildren(childInstance).save()
}else{
errorList.add(childInstance)
}
}
[errors: errorList, children:childrenList]
}
当我尝试在控制器上检查时,孩子似乎保存在 save() 方法 [childPlacementFileInstance.?children] 上,但是当它重定向到 show() 方法时,[childPlacementFileInstance.?children] 没有不再出现,它是空的。为什么??O_O
没有错误,没有例外。所以我预计它会起作用,但它没有。:(