Как ограничить поиск значением поля компонента с помощью подключаемого модуля Grails - PullRequest
3 голосов
/ 29 декабря 2010

Используя подключаемый модуль Grails для поиска, я хотел бы искать все продукты в определенной категории, используя конструктор запросов, например:

Products.search {
  must(queryString(params.q))
  must(term('??????','Food'))  
}

Использование 'category.name' возвращает: Не удалось найти сопоставление для псевдонима [категория] и путь [категория.имя]

class Product {    
  String name
  String desc
  Category category

  static searchable = {
    category component: true
  }
}

class Category {      
  String name

  static hasMany = [products: Product]

  static searchable = true     
}

Есть идеи?Спасибо.

1 Ответ

4 голосов
/ 09 января 2011

Я думаю, вы можете сделать что-то вроде:

def results = Product.search {
  must(term('$/Product/category/name', params.categoryName))
  must(queryString(params.q))
}

Надеюсь, это поможет!

...