Firebase в реальном времени .indexOn - PullRequest
2 голосов
/ 03 мая 2019

прочитав довольно много о .index, я подумал, что понял, как это работает, но, похоже, я все еще немного потерян для одного случая.

Моя проблема в том, что я получаю предупреждение о .indexOn при поиске по тегу, что я делаю следующим образом:

postRef
 .orderByChild(`i/tags/${tag}/a`)
 .equalTo(1)

${tag} - это искомый тег

У меня есть следующая структура: structure

И правила:

"posts": {
      ".read": "auth != null",
      ".write": "auth != null",
      ".indexOn": "i/ts",
      "$pid": {
        "i": {
          "tags": {
            ".indexOn": "a",
          },
        }
      }
    },

из того, что я понял, мой шаблон должен работать для postId, а .indexOn долженработать в этом случае, но я получаю предупреждение при каждом поиске

Я получаю предупреждение:

[Firebase/Database][I-RDB034028] Using an unspecified index. Your data will be downloaded and filtered on the client. Consider adding ".indexOn": "i/tags/test/a" at /posts to your security rules for better performance

1 Ответ

0 голосов
/ 20 мая 2019

По предложению Христо Ефтимова я изменяю свой способ хранения тегов, чтобы иметь лучший доступ. Я сделал это, создав другую таблицу для тега, к которой более легко получить доступ, и для которой не нужен конкретный индекс

Firebase .index на динамических клавишах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...