【问题标题】:Grails - Searchable plugin: Cannot search data in a one to many relationshipGrails - 可搜索插件:无法以一对多关系搜索数据
【发布时间】:2012-04-11 05:19:56
【问题描述】:

对不起,如果标题不是那么具体,但我不知道如何陈述我的问题。我正在使用可搜索插件,一切都很好,直到我需要搜索与 hasMany - BelongsTo 关联的域上的信息。
示例:
我有两个课程:

class Author {
  String name
  static hasMany = [books: Book]
  static searchable = true
}

还有

class Book {
  String name
  static belongTo = [author: Author]
  static searchable = true
}

我需要能够根据书名或作者搜索一本书。
但是当调用Book.search(query, [properties:['name', author]]) 时,只搜索书名,而不搜索作者。
我试过 author component: true(在 Book 课上),root:false(在 Author 课上)但没有运气。

这个问题已经花费了我几个小时,而且我确信它必须是易于实施的东西。

【问题讨论】:

    标签: grails searchable


    【解决方案1】:

    您是否尝试将 name 替换为 author.name,应该可以, 请参阅有关连接域的文档以便可搜索,luke 也是测试您的查询的好工具,如果没有这个工具,我无法正确使用 http://code.google.com/p/luke/downloads/detail?name=lukeall-3.5.0.jar&can=2&q=

    【讨论】:

    • 是的,看来我必须了解索引的内部结构。因为如果我自己不命名 hte 索引,它默认为 /domain/property 之类的东西。谢谢
    猜你喜欢
    • 2011-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-17
    • 1970-01-01
    • 2011-01-28
    相关资源
    最近更新 更多