RestfulController上的Grails文档:嵌套资源查询包含id==id

RestfulController上的Grails文档:嵌套资源查询包含id==id,grails,groovy,Grails,Groovy,我正在使用Grails RestfulController,在文档第9.1.5.1()节中遇到了一个奇怪的查询,其id==id: @Override protected Book queryForResource(Serializable id) { Book.where { id == id && author.id = params.authorId }.find() } 最初认为这是doco中的一个问题,但实际上编写了代码,并且它确实只适用

我正在使用Grails RestfulController,在文档第9.1.5.1()节中遇到了一个奇怪的查询,其id==id:

@Override
protected Book queryForResource(Serializable id) {
    Book.where {
        id == id && author.id = params.authorId
    }.find()
}
最初认为这是doco中的一个问题,但实际上编写了代码,并且它确实只适用于id==id。Codenarc还检测到奇怪的比较,生成的Hibernate查询按预期进行了处理。 有人能帮我理解吗?谢谢

 id   ==  id  
|___|    |___|
  |        |
  |        |
  |      id value passed as method parameter
  |
id property from domain class
中表达式的左侧,其中
查询或
DetachedCriteria
始终是域类中属性的引用

类似于:

select a from Author as a where a.id = :id
其中
:id
将是传递给查询的参数

中表达式的左侧,其中
查询或
DetachedCriteria
始终是域类中属性的引用

类似于:

select a from Author as a where a.id = :id
其中
:id
将是传递给查询的参数