FireStore for Ruby - Как подписаться на изменения документа - PullRequest
0 голосов
/ 26 июня 2018

Я хотел бы подписаться на изменения в документе firestore в ruby, используя Firestore API для Ruby

Я могу получить ссылку на документ и данные, используя следующий код, но не уверенкак подписаться на изменения

# Firestore API
firestore = Google::Cloud::Firestore.new(project_id: 'project_id', credentials: './google-cloud-key.json')

# Get a reference to a document
ref = firestore.collection('collection_name').doc('id')

# Get the actual data in the document
snapshot = ref.get

data = snapshot.exists? ? snapshot.data : nil

# From this point on, how can I subscribe to changes in the document?

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

Эта функция была недавно добавлена ​​в клиентскую библиотеку fire-store.

Вы можете использовать DocumentReference # прослушивать изменения в документе

require "google/cloud/firestore"

firestore = Google::Cloud::Firestore.new

# Get a document reference
nyc_ref = firestore.doc "cities/NYC"

listener = nyc_ref.listen do |snapshot|
  puts "The population of #{snapshot[:name]} "
  puts "is #{snapshot[:population]}."
end

# When ready, stop the listen operation and close the stream.
listener.stop
0 голосов
/ 26 июня 2018

Когда я просматриваю документацию Cloud Firestore для Firebase для получения обновлений в реальном времени , там говорится следующее:

Примечание: прослушиватели в реальном времени еще не поддерживаются в клиентских библиотеках C #, Go, PHP, Python или Ruby .

Похоже, что обновления / подписки в реальном времени еще не поддерживаются в Ruby.

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