一尘不染

如何在groovy / grails中为嵌套对象创建条件?

hibernate

我需要有关为嵌套对象创建hibernate条件的帮助。例如 :

class office{
    Integer id;
    OfficeDetails cmdData ;
}

class OfficeDetails {
    Integer id;
    Region region;

}

class Region {
    Integer id;
    Integer regionNum;
}

现在,我正在尝试从服务类(officeService)中提取与某个区域匹配的所有办事处,如下所示:

List<Office> findAllByRegion( Integer regionNumber){
    def criteria =  {  eq ( 'cmdData.region.regionNum', regionNumber ) }
    def allOfficesInTheRegion =  Office.findAll(criteria)

    return allOfficesInTheRegion
}

总是出现异常:“ org.hibernate.QueryException:无法解析属性:”我需要找出正确的方法来创建此查询的条件。有人可以帮忙吗?


阅读 224

收藏
2020-06-20

共1个答案

一尘不染

请参阅用户指南的
标准”部分下的“查询关联” :

def criteria = {
  cmdData {
    region {
      eq('regionNum', regionNumber)
    }
  }
}
2020-06-20