javascript - 使用 AJAX 轮询数据库更改并将新更改附加到 Rails 中的 View

标签 javascript jquery ruby-on-rails ajax

将新内容添加到特定表时,将数据库中的内容附加到 View 时遇到一些问题。目前,每隔几分钟数据库就会通过 cron 作业更新一次新内容。

最终的目标是让显示该内容的页面添加到数据库中,从而在不刷新页面的情况下显示最新的内容。我能想到如何做到这一点的唯一方法是使用 AJAX。我研究过 Railscast 229,他们讨论了如何做到这一点,但没有多大意义。

如果查看代码示例有帮助,那么我也可以提供其中一些。

提前致谢!

最佳答案

对于典型的多进程 rails 设置,轮询是您的最佳选择。

还有两种选择。 Websockets 和服务器发送事件可与多线程或事件 (NIO) 部署一起使用。

在这两种情况下,浏览器客户端和服务器之间都存在长打开连接,服务器可以通过该连接发布客户端订阅的更新。服务器发送事件实际上在 Rails 中非常简单。结账Mini-chat with Rails and Server-Sent Events

另请参阅this回答不同类型的并发模型

关于javascript - 使用 AJAX 轮询数据库更改并将新更改附加到 Rails 中的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29323456/

相关文章:

javascript - Node 表达 : not able to access data after query execution

javascript - Facebook API、Javascript SDK 和可变范围

javascript - 如何将这个 onclick 动画变成 onload 动画?

ruby-on-rails - 比较日期

ruby-on-rails - ruby on rails gravatar_image_tag

javascript/jQuery变量问题(可能是缓存问题)

javascript - Fetch 未被 Flow 覆盖

javascript - Highchart 隐藏默认按钮

jquery - PrimeFaces p :inputText and p:inputTextarea rendering too wide in a p:panelGrid form

ruby-on-rails - 非序列数据的正则表达式密码验证