比方说,用户可以单击一个按钮(触发(远程)触发一个控制器动作),并在该控制器动作(让其计算出来的名称)完成后重定向到当前视图。现在让我们假设控制器动作花费的时间比眨眼(10s)更长,因此进度条会很好。
视图中的某处:
<div id="progress"></div>
控制器操作:
def calculate
...
update_progress_bar_in_view
...
redirect_to last_view
end
我知道有些插件/宝石可以解决这个问题。但是出于教育目的,我想从头开始。所以我的问题是,update_progress_bar_in_view
应该如何更新#progress
?我猜触发update_progress_bar_in_view.js.erb
会很好,但是我不知道在控制器动作运行时是否有可能...
我不想做的事情是每x秒检查一次解决方法...