Ruby on rails 通过触发间隔上的操作来更新页面的一部分

Ruby on rails 通过触发间隔上的操作来更新页面的一部分,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我希望每秒钟只更新一部分页面。我知道我可以在JavaScript中使用setInterval来实现这一点,但如果我想在Rails代码中内置一些逻辑呢?下面是一个简单的抽象: 控制器中的代码: def lookup_something @stuff_to_display = [code to look up a set of records] end 然后在视图中: <body> <div id="update_this"></div> &

我希望每秒钟只更新一部分页面。我知道我可以在JavaScript中使用setInterval来实现这一点,但如果我想在Rails代码中内置一些逻辑呢?下面是一个简单的抽象:

控制器中的代码:

def lookup_something
  @stuff_to_display = [code to look up a set of records]
end
然后在视图中:

<body>    
<div id="update_this"></div>    
</body>


我希望每秒运行一次该操作并更新上面的
div
。我知道我以前在一个项目中用一个相对简单的代码块做过这件事,但我一辈子都不知道如何再做一次。

如果您愿意使用jQuery,$.ajax调用非常简单: 从


这取决于Rails的版本。在旧版本中,有
定期\u call\u remote
,但在最近的版本中,这已被删除。我建议你看看这个问题:这个链接起了作用。定期调用远程是我在过去使用的,但在Rails3中它似乎被弃用了。
setInterval(function() {
     $.ajax({
        url:"url/to/lookup_something",
        success:function(result){
            // do something here to 
            // $("#update_this")
        }
    });
}, 1000); // every second