В приложении Rails я использовал Faye (адаптер стойки) для push-уведомлений (для чата).
Я хочу использовать Faye для другого варианта использования (больше push-уведомлений), но Я не могу этого понять.
В моем приложении модель может быть создана из фонового задания, поэтому я хочу обновить одно из моих представлений (скажем, действие индекса), когда модель будет создана.
Как итак:
app / models / post.rb
class Post
include Mongoid::Document
after_create :notify_subscribers
private
def notify_subscribers
Faye::Client.publish("/posts")
end
end
app / views / posts / index.html.erb
<%= subscribe_to(posts_url) do %>
uhh what do I do here? ajax call to refresh the whole page??
<% end %>
Так что публикация уведомления непосредственно из обратного вызова after_create - хорошая идея и когда я получаю сообщение от сервера Faye, как мне приступить к реализации "обновления"? Я просто выполняю вызов AJAX для перезагрузки данных с сервера? Похоже, это будет медленным.
Далее я хочу использовать что-то подобное для обновлений модели (скажем, пользователь добавил несколько комментариев или автор изменил содержимое), поэтому постоянная обработка БД не кажется хороший план ...