2013-07-29 4 views
1

Я создаю приложение с Grails.Grails, запрашивающий базу данных по списку объектов

У меня есть два класса домена:

родитель и ребенок:

class Parent { 
    string name 


    hasMany[children: child] 
} 

class Child { 
    string name 

    belongsTo[parent: parent] 
} 

Я ищу для всех родителей с именем, похожим на ключевое слово:

def parents = Parent.findAll("From Parent as parent where parent.name like '%fra%'") 

Я хотел бы для запроса базы данных, в которой все дети, у которых есть родительский список в списке родителей.

Как я мог это сделать?

Благодаря

ответ

2

ли:

Child.findAllByParentInList(parents) 

сделать это?

+0

Да. Спасибо! Я полностью пропустил компаратор InList! еще раз спасибо. – Jacopo

1

Использование HQL вы можете достичь того же в одном запросе:

def children = Child.executeQuery("select c from Child as c \ 
            where c.parent.name like '%fra%'")