我有这种情况:如何将嵌套属性与Grails标准中的类的属性一起使用?
country {
and {
rates{
and{
between('effectiveDate', startDate, endDate)
or {
and {
eq('hoursEligible', true)
gt('hours', new BigDecimal(0))
}
and {
eq('travelTimeEligible', true)
gt('travel', new BigDecimal(0))
}
and {
eq('mileageEligible', true)
gt('mileage', new BigDecimal(0))
}
and {
eq('expensesEligible', true)
gt('expenses', new BigDecimal(0))
}
}
}
}
}
}
的事情是:小时是从特定类的属性,具有此命名查询的类。而rates是嵌套在我的特定类的嵌套对象之一中的列表。 当我尝试使用它那里我得到:
java.lang.IllegalArgumentException: object is not an instance of declaring class
如何我指的是时间属性使用此命名查询? 另外还有一个问题......如果在费率列表中有任何项目返回true,那么这将返回true,对吗?
这是我的领域类:
class TravelDetail {
Date date
Country country
BigDecimal hours
BigDecimal mileage
BigDecimal travel
BigDecimal expenses
进入国家我:
class Country {
static hasMany = [rates: Rate
而进入房价,我有:
class Rate {
Boolean hoursEligible = Boolean.TRUE
Boolean travelTimeEligible = Boolean.TRUE
Boolean mileageEligible = Boolean.TRUE
Boolean expensesEligible = Boolean.TRUE
显示你的域类 – injecteer
@injecteer,在那里增加了部分域名。 – Igor