当数据库中的数据发生变化时,如何动态更新rails中的客户端

时间:2013-06-01 18:09:47

标签: ruby-on-rails ruby-on-rails-3

我希望页面上的数据在数据库中发生更改后立即更新。 有没有办法在数据发生变化时在服务器上触发某些事件并将其发送给客户端?

例如,如果某个其他用户将该用户添加为朋友,则用户可能会看到他拥有的朋友请求的数量,并且该号码应该实时更新。

2 个答案:

答案 0 :(得分:4)

这是Rails 4(服务器发送事件)中的全新功能。这个主题有一个Rails Cast

答案 1 :(得分:1)

如果我没错,那么您正在尝试编写一个Rails应用程序,其中服务器可以实时将数据推送到多个客户端。 他们有许多涉及实时推送的指南,以及Rails 3。

  • 重型卡车

你可以尝试剑圣来做你想做的事。 github存储库:https://github.com/maccman/juggernaut使用juggernaut的应用程序示例:https://github.com/maccman/holla

查看Faye:http://faye.jcoglan.com/ - 我听到它真的很棒。 如果您正在寻找托管解决方案,我过去曾使用过Pusher http://pusher.com/,并且喜欢它。我在大约30分钟内将一个使用ajax轮询的站点转换为推进器。

  • Ajax推送引擎 - 完整的Comet解决方案

您可以使用APE (Ajax Push Engine) Rails plugin。 APE是专为Ajax Push设计的全功能OpenSource解决方案。它包括一个彗星服务器和一个Javascript框架。 APE允许实现任何类型的实时数据流到Web浏览器,而无需在客户端安装任何东西。

我希望这会对你有所帮助。

由于