Подтвердить что ты не робот

Firebase: режим только для чтения и не в режиме реального времени активирован для улучшения производительности браузера

Только для чтения и не в режиме реального времени для повышения эффективности браузера

Сообщение появляется в моем проекте, и я также не могу удалить узлы.

Также я прочитал этот https://groups.google.com/forum/#!topic/firebase-talk/qLxZCI8i47s

Какие состояния:

Если у вас много узлов в вашей Firebase (скажем тысячи), нам нужно создать новый элемент для каждого node, а современные браузеры просто имеют ограничения на количество элементов DOM, которые вы можете добавить на страницу

В нем говорится:

Чтобы устранить эту проблему, не загружайте свою Firebase Dashboard в корень вашей Firebase, а загружайте ее ниже в иерархии

Я не понимаю, что это значит

Как мне вернуться на свою панель управления в реальном времени?

4b9b3361

Ответ 1

Когда он обнаруживает, что загружает слишком много узлов из вашей базы данных, Firebase Console прекращает использование режима реального времени и переключается в режим только для чтения. В этом режиме он требует меньше работы от браузера, поэтому более вероятно, что браузер останется работоспособным.

Чтобы вернуться в режим реального времени, вам нужно перейти в местоположение с меньшим количеством узлов. Скажем так, что вы начинаете загрузку базы данных в корневой каталог, это означает, что "псевдо-адресная строка" в верхней части дерева данных скажет:

https://<your-project>.firebaseio.com/

Затем отобразится список элементов. Теперь щелкните по URL-адресу в этой псевдо-адресной строке и измените его на:

https://<your-project>.firebaseio.com/<one-of-your-keys>

И нажмите enter. Дерево данных перезагрузится с помощью node с one-of-your-keys и вниз и, скорее всего, снова переключится в режим реального времени.

Ответ 2

Если вы хотите удалить высокий уровень node, когда это активировано, я рекомендую это сделать.

Откройте текстовый редактор и введите { }. Сохраните этот файл как "blankJSON.json".

Перейдите на высокий уровень node, который хотите удалить, и выберите его, как только он откроется и покажет вам все узлы, которые необходимо удалить, выберите три полосы в правом верхнем углу и выберите "Импорт JSON", (Это было бы безопасно сначала "Экспортировать JSON", если у вас нет резервных копий, если вы допустили ошибку здесь). Импортируйте ранее созданный JSON файл под названием "blankJSON".

Это приведет к удалению всех данных внутри.

Еще раз, я настоятельно рекомендую вам сделать резервную копию, прежде чем делать это. Очень легко сделать резервную копию, а также намного проще, чем вы думаете, чтобы загрузить этот пустой JSON в неправильный node, а затем стирать кучу важные данные.

Ответ 3

Каждый ключ node в firebase является ссылкой, вы можете открыть под node на новой вкладке, а затем отредактировать этот под node и его дочерние элементы.

  • Щелкните правой кнопкой мыши суб- node, который вы хотите отредактировать или удалить

  • Выберите открытую ссылку на новой вкладке

  • Отредактируйте под node на новой вкладке

Ответ 4

У меня та же проблема... Я немного удивлен, потому что, хотя Firebase может легко масштабироваться для поддержки огромного количества данных (пример миллионов пользователей и т.д.).

У меня есть node с 80000 под-узлами (каждый объект имеет свой собственный push-id), и я не могу удалить или выполнить какое-либо действие, потому что в режиме реального времени в консоли Firebase не работает.

Я думаю, что единственный способ ограничить или удалить данные, которые он делает, с помощью JAVA-кода: (

Ответ 5

Несколько попыток загрузки определенных ключей может быть утомительным. Существует библиотека python, которая может легко сделать это для вас.

http://ozgur.github.io/python-firebase/

Мне нужно было удалить много ключей, и это помогло мне сделать это за один раз.

Ответ 6

Что вы можете сделать, так это иметь onclicklistener и вызвать метод remove для вашего DatabaseReference, например:

  mCart.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            mDatabaseReference.removeValue();
        }
    });