Algolia 不处理 ORs of ANDs 过滤条件
Algolia not handle ORs of ANDs filter condition
我正在使用 Algolia 作为搜索引擎,我想按如下方式从 algolia 获取结果
如果visibility = everyone,那么它将向所有用户显示
如果 visibility = private,那么它只会为登录用户
为此,我尝试了
filter="visibility:everyone" OR ("visibility:me" AND "user.username:testuser")
但它return低于错误
{
"message": "filters: filter (X AND Y) OR Z is not allowed, only (X OR Y) AND Z is allowed",
"status": 400
}
我怎样才能改变条件来实现上述情况?
任何帮助将不胜感激,并提前致谢。
条件可以简化为
filter="visibility:everyone" OR "user.username:testuser"
与 Algolia 配合使用。
P.S。为了使其更安全,请将过滤器直接指定给 secured API key,不要直接将其与查询一起发送。
尝试通过两次实现 NOT 将 And Gate 更改为 OR Gate
针对您的情况
不("visibility:everyone" 和(不"visibility:me" 或不"user.username:testuser"))
我正在使用 Algolia 作为搜索引擎,我想按如下方式从 algolia 获取结果
如果visibility = everyone,那么它将向所有用户显示
如果 visibility = private,那么它只会为登录用户
为此,我尝试了
filter="visibility:everyone" OR ("visibility:me" AND "user.username:testuser")
但它return低于错误
{
"message": "filters: filter (X AND Y) OR Z is not allowed, only (X OR Y) AND Z is allowed",
"status": 400
}
我怎样才能改变条件来实现上述情况?
任何帮助将不胜感激,并提前致谢。
条件可以简化为
filter="visibility:everyone" OR "user.username:testuser"
与 Algolia 配合使用。
P.S。为了使其更安全,请将过滤器直接指定给 secured API key,不要直接将其与查询一起发送。
尝试通过两次实现 NOT 将 And Gate 更改为 OR Gate 针对您的情况
不("visibility:everyone" 和(不"visibility:me" 或不"user.username:testuser"))