如何在Groovy / Gorm中正确编写此代码?

我有一个包含许多内容的PageComponent域类。我想查看特定的PageComponent是否包含带有特定键的Content。

我以为我可以说:

def pageComponent = PageComponent.get(1);

if (pageComponent.contents.findByKey("textnode") {
  // update
} else {
  // insert
}

目前,我正在使用它。不太优雅...
def pageComponent = PageComponent.get(1);

def content = Content.withCriteria {
    eq "pageComponent.id", pageComponent.id
    eq "key", "textnode"
}

最佳答案

您还可以使用动态查找器:

Content.findByPageComponentAndKey(pageComponent, "textnode")

10-08 13:39