gpt4 book ai didi

grails - 从hasMany关联中删除元素不起作用

转载 作者:行者123 更新时间:2023-12-02 15:08:25 25 4
gpt4 key购买 nike

调用ArrayList#remove()ArrayList#removeAll()不起作用。为什么会这样呢?

class Category {
static hasMany = [elems: Elem]
// ..
}

class Elem {
static belongsTo = Category
// ..
}

// ExampleController.groovy
def saveCategory(/* args */) {
def category = categoryService.get.. // get some category object
def elem = elemService.getElem(1) // get some element that's in the category
category.elems.remove(elem) // *How to get this working*? Returns false as the object is not getting removed.
category = categoryService.saveCategory(category)
JSON.registerObjectMarshaller(Category) {
def map = [:]
map['id'] = it.id
map['elems'] = it.elems
return map
}
JSON.registerObjectMarshaller(Elem) {
def map = [:]
map['id'] = it.id
return map
}
render(['category': category] as JSON)
}

谢谢。

最佳答案

处理此问题的官方方法是使用addTo*removeFrom*方法。您可能想研究一下方法,他们正在处理此问题。

http://grails.org/doc/latest/ref/Domain%20Classes/addTo.html

http://grails.org/doc/latest/ref/Domain%20Classes/removeFrom.html

关于grails - 从hasMany关联中删除元素不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22170727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com