Grails searchable插件:无限结果

时间:2011-07-07 22:36:50

标签: plugins grails searchable grails-searchable

可搜索的插件似乎默认只有10个结果。如何更改此选项以返回所有结果?

@ Bill 我正在寻找这样的东西:

DomainClass.search("This is the query", [max:every_last_one_of_em])

我可以设置40的限制并且可能没问题,但是这个搜索的目的是给人类一个类似的东西列表来消除歧义,所以如果缺少一些东西,愚蠢的人类可能会使用“假设“得到错误的答案。

2 个答案:

答案 0 :(得分:3)

来自http://grails.org/Searchable+Plugin+-+Methods+-+search

的文档
Options affecting the return value
    max - The maximum number of results to return (default 10). Only used with result: "searchResult"

因此,您似乎需要将选项地图传递给您的搜索电话,例如:

DomainClass.search( "This is the query", [max:1000] )

注意,具有“无限制”搜索结果的是Bad Idea(TM)。弄清楚你想要处理的最大值并将其作为限制。

如果你必须,我会建议你有一个“大”的限制。如果你找回那么多,那么再做一个查询以找出有多少(也有一个选项),并向用户显示一条消息“这是一个不完整的集,请进一步限制你的观点”或者其他一些。

如果你绝对必须全部展示它们。然后使用该计数查询(这是我在上面列出的页面中的一个选项),然后使用该计数重新发送搜索作为最大值。

答案 1 :(得分:3)

Mikey使搜索返回所有结果只是从defaultMethodOptions中删除最大字段。

您可以在Configuration - >中找到此声明。 Searchable.groovy

defaultMethodOptions = [
    search: [reload: false, escape: true, offset: 0, max: 10, defaultOperator: "and"],
    suggestQuery: [userFriendly: true]
]