gpt4 book ai didi

Grails 可搜索插件 - 过滤结果集

转载 作者:行者123 更新时间:2023-12-04 21:45:21 25 4
gpt4 key购买 nike

我目前正在使用 Lucene。我的要求就像 facebook 搜索框。用户搜索人和 friend 。但在我的要求中,用户的隐私设置如姓名、位置、电子邮件地址对所有人或只有 friend 可见。他可以向 friend 和社区的其他成员显示和隐藏这些字段。

我已经实现了基于姓名、位置和电子邮件地址的简单搜索。但现在我正在根据隐私设置修改搜索。

这是我的场景 ..

用户A 有隐私设置:
姓名只显示给 friend
电子邮件显示给每个人
位置不显示给任何人。

用户 X 的类型位置用户A 在搜索框中,那么它不应该出现在结果中。但是如果用户 X 在搜索框中输入用户 A 的名称,那么它应该会显示出来,因为用户 A 没有限制名称,并且在隐私设置中他的 friend 可以看到它。

你能指导我的方法。

如果我没有清楚地写下我的要求,请告诉我。

我分析了以下方法,
1- IndexSearcher 的解释方法(会影响整体性能)
2- 探索过滤器
但不能得到太多

我的方法:

根据名称获取resultSet
根据位置获取resultSet
根据email地址获取resultSet

循环每 3 个结果集并应用与隐私设置相关的条件,并根据隐私设置排除项目。最后合并所有 3 个结果集。

如果有其他方法吗?请与我分享。谢谢。

最佳答案

可能您可以在可搜索插件中使用 lucene 查询语法来根据需要创建 lucene 查询。

您可以找到 herehere

您可以通过覆盖默认属性设置来限制搜索。你只需要像这样申请......

class A {
String x
String y
String z

static searchable = [only: ['x', 'y']]
// …
}

使用它您可以限制可搜索的属性。

关于Grails 可搜索插件 - 过滤结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15266130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com