2017-03-08 5 views
0

アム検索エンジンのAlgoliaを使用して、私は視認性=誰もが、それはすべてのユーザーに表示されている場合Algoliaは論理積フィルタ条件の論理和を扱えない

  1. を次のようにalgoliaに起因フェッチしたい

  2. 可視性=プライベート、

はそれを達成するために、それだけのために、ユーザーにログインします、私は

をしようとした場合
filter="visibility:everyone" OR ("visibility:me" AND "user.username:testuser") 

しかし、それはどのように私は、シナリオ上で実現するための条件を変更することができ

{ 
    "message": "filters: filter (X AND Y) OR Z is not allowed, only (X OR Y) AND Z is allowed", 
    "status": 400 
} 

エラーの下に戻りますか?

ご協力いただきありがとうございます。

答えて

1

条件はAlgoliaで動作

filter="visibility:everyone" OR "user.username:testuser" 

に簡略化することができます。

P.S.より安全にするには、フィルターをsecured API keyに直接指定し、照会で直接送信しないでください。

0

が変化すると、ゲート

なく、あなたのケースのためではない を実装する2倍にORゲートしてみてください( "可視性:誰もが" AND(NOT "可視性:私の" OR NOT "user.username:TESTUSERを"))

関連する問題