2010-12-28 4 views
3

が、私は次のようにクエリビルダを使用して、特定のカテゴリ内のすべての製品を検索したい:使用検索可能Grailsのプラグインで、コンポーネントのフィールド値に検索を制限する方法Grailsの検索可能なプラグインを使用して

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

「category.name '返品:エイリアス[カテゴリ]とパス[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  
} 

アイデアをお持ちですか?ありがとう。

答えて

4

私はあなたのような何かを行うことができると思う。

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

ホープ、このことができます!

+0

これは動作します。 term( 'Product.category.name'、params.categoryName) – Micor

関連する問題