我想在 Ruby on Rails 应用程序中上传并处理文件。文件上传通常很短,但服务器端处理可能需要一些时间(超过 20 秒),所以我想给用户一些指示 - 比无意义的“处理...”屏幕更好的东西。
我正在尝试在视图中使用以下代码
<%= periodically_call_remote(:url => {:action => 'progress_monitor', :controller => 'files'},
:frequency => '5',
:update => "setProgress('progressBar','5')"
) %>
:update 参数的内容是我想每 5 秒运行一次的 javascript
以下代码在文件控制器中
def progress_monitor
render :text => 'whatever'
end
最终,progress_monitor 方法将以整数形式返回当前进度(完成百分比),并将其传递给“setProgress”JavaScript 代码(将更新屏幕元素)
但是,我正在努力从服务器获得正确的响应,然后将其传递给 JavaScript。
任何人都可以帮忙,还是我以错误的方式接近这个?
对此有一个后续问题,我最初更新了这个问题,但更新与这里的新问题有很大不同,因此需要提出一个新问题。