2011-04-29 96 views
1

我使用粗糙在我的應用程序中繪製條形圖。在一個視圖中,'比較',我想爲我的'項目'的每個'步驟'顯示一張圖。我想像是這樣的:如何使用Ruby on Rails和Gruff實時生成圖像?

image_tag graph_step_path(step) 

我在步進控制器中創建了一個'圖形'動作,並且包含了一個路徑。但現在我有點失落。我的控制器操作如何將正確的圖像路徑返回給image_tag函數?做'返回'並不合適。或者我可以以某種方式直接包含gruff生成的圖像blob?

編輯:

我已經創建,創建圖表並返回文件路徑的輔助功能。

+0

與你的幫手,你應該已經解決了這個問題。你在問什麼? – Mario 2011-04-29 13:20:22

+0

我的幫手做到了,但新用戶無法回答他們自己的問題或其他:(所以我只能編輯它。 – MrB 2011-04-30 16:50:56

回答

5

在您的控制器方法中,您想要返回實際圖像而不是路徑。將圖像寫入磁盤可能會非常緩慢。 rails中的send_data方法用於執行此操作。

send_data(g.to_blob, :filename => "any.png", :type => 'image/png', :disposition=> 'inline') 

g是你粗魯的例子。文件名完全不重要。圖像標籤的src應該是生成圖形的特定控制器方法。你可以使用普通的url助手來生成這個。

+0

謝謝!這就是我一直在尋找的。 – MrB 2011-04-30 16:50:29