使用AJAX更新Rails视图

时间:2015-10-14 13:54:33

标签: ruby-on-rails ajax

这方面有很多疑问,但我还没有找到具体的答案。

我使用rails 4构建了一个rails应用程序。 我有一个名为' VirtualServer'

的模型和控制器

VirtualServer模型存储有关真实虚拟机的名称,ID和其他属性。

当我调用VirtualServer show动作时,它会呈现show.html.erb

现在我想使用AJAX动态更新此页面上的一些信息。具体来说,我想访问一些可从RESTful API获得的虚拟机的运行时数据。我的VirtualServer中有一个名为stats的方法,它使用第三方客户端发出此请求,并以散列方式返回数据。

渲染秀后,我希望能够每10秒轮询统计数据并渲染部分数据。

在rails 4中是否有内置方式,以定期间隔从视图发出ajax请求并呈现显示信息的部分请求?

virtual_server_controller.rb

class VirtualServer < ApplicationController
  def show
    @virtualServer = VirtualServer.find(params[:id])
  end

  def stats
     vm_id = params[:id]
     # Thirdparty code make RESTful request with vm_id
     # and return hash
     #
     @vm_details = client.get_vm_stats(vm_id)
  end
end

virtual_server / show.html.erb

<p>
    <strong>Name:</strong>
    <%= @vnf.name %>
</p>

<!-- need to call VirtualServer.stats and render result every 10 sec -->

0 个答案:

没有答案