这方面有很多疑问,但我还没有找到具体的答案。
我使用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 -->