【问题标题】:How to create criteria in groovy/grails for nested object?如何在 groovy/grails 中为嵌套对象创建标准?
【发布时间】:2012-10-07 22:35:25
【问题描述】:

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

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:无法解析属性:” 我需要找到为此查询创建条件的正确方法。有人可以帮忙吗?

【问题讨论】:

    标签: hibernate grails criteria


    【解决方案1】:

    参见criteria section of the user guide下的“查询关联”:

    def criteria = {
      cmdData {
        region {
          eq('regionNum', regionNumber)
        }
      }
    }
    

    【讨论】:

    • 为了我和其他人复制工作代码的好处:def criteria = MyOffice.createCriteria(); def 结果 = criteria.list { cmtData { region { eq("regionNum", regionNumber) } } };返回结果;
    猜你喜欢
    • 2011-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多