findAllWhere和List fetch

时间:2014-12-10 18:39:10

标签: grails gorm

所以我的域类如下:

class Enrollment {
    Course course
    Date date
    User user
    static constraints = {

    }
}

在我的控制器中,我有这个动作:

def persons =  Enrollment.list(fetch :[user : "a"])
        render persons

我正在尝试仅提取名为" a"及其相应的地图。但是它显示了所有..我试过FindAllWhere但是抛出错误

No such property: user for class: tester.EnrollmentController

1 个答案:

答案 0 :(得分:1)

我假设User类具有name属性。

怎么样:

def user = User.findByName("a")
def persons = user ? Enrollment.findAllByUser(user) : []

假设您可以找到一个唯一的用户(名称可能不够独特),否则我会做类似的事情:

def persons = Enrollment.createCriteria().list{
    user {
       eq('name', "a")
    }
}