我最近發現鐵軌流,並具有閱讀各種文檔,我試着將它添加到我的控制器之一,像這樣:Rails的流:「渲染流:真正的」不工作
def index
render :stream => true
end
我的模板文件目前看起來像這樣:
<%10.times do%>
<p>
I should get streamed ERB...
<%sleep 0.5%>
</p>
<%end%>
但不是每0.5秒顯示一條消息,而是等待5秒鐘並顯示整個頁面!我在瀏覽器中檢查了這種行爲並使用了curl。
我使用OSX麒麟,是的,我配置unicorn.rb流媒體:
listen 3000, :tcp_nodelay => true, :tcp_nopush => false
worker_processes 1
如果你想看到我的佈局文件,它看起來像這樣:
<!DOCTYPE html>
<html>
<head>
<title>StreamingTest</title>
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<%= yield %>
</body>
</html>
我嘗試禁用所有的寶石(rails和postgres除外),並且將我的控制器,佈局和模板減少到最低限度,沒有任何成功。
我甚至去下載一個完整的流媒體演示,我發現(https://github.com/slim-template/slim-streamingtest),當我運行它,它也沒有流! (請注意任何人試圖運行該演示:我必須更改gemfile源使用https而不是http,然後才能「捆綁安裝」,並且在運行之前我必須「捆綁更新鏈接」)
I注意,別人(使用彪馬)似乎有類似的問題,還沒有得到圓滿解決:
這可能是任何對我的作品也將會爲他們工作。
如果我能夠正常工作,流式傳輸對我們的應用程序確實有幫助,但我甚至無法獲得演示流式傳輸應用程序正常運行!我懷疑它可能與我的開發環境有關,但是當我將我的應用程序部署到Heroku時,問題依然存在,而且我沒有想法。任何幫助將不勝感激 。 。 。
謝謝!
我從來沒有玩過它。但一旦搞清楚了,就嘗試在Action Cable上構建它。 – 7urkm3n
您使用的是哪個版本的Rails? –
Rails 4.1.8,ruby 2.1.2 – dacoinminster