【发布时间】:2015-04-28 15:26:18
【问题描述】:
这些是我的域对象
User{
hasMany = {roles: UserRole}
}
UserRole{
User user
Role role
}
Role{
String authority
}
我需要根据角色查找用户。为此,我尝试使用以下标准:
def role_admin = Role.findByAuthority('ROLE_ADMIN')
def criteria = new DetachedCriteria(User).build {
roles{
role{
idEq(role_admin.id)
}
}
}
result.users = criteria.list(params)
result.total = criteria.count()
上面总是会返回一个结果,即使我已经通过直接查看数据库来验证应该有更多结果。传递给列表的params 是正确的,但我尝试删除它们以确保确定。我看不出上面有什么问题,有什么建议吗?
我也试过了
roles{
role{
eq("authority","ROLE_ADMIN")
}
}
但它正在抛出异常:
“where 子句”中的未知列“role_alias2_.authority”
【问题讨论】: