1

我使用 gruff 在我的应用程序中绘制条形图。在一个视图中,“比较”,我想为我的“项目”的每个“步骤”显示一个图表。我想象它是这样的:

image_tag graph_step_path(step)

我在步骤控制器中创建了一个“图形”动作并包含了一条路线。但现在我有点迷路了。我的控制器操作如何将正确的图像路径返回给 image_tag 函数?做'return'感觉不对。或者我可以以某种方式直接包含由 gruff 生成的图像 blob?

编辑:

我创建了一个辅助函数来创建图形并返回文件路径。

4

1 回答 1

5

在您的控制器方法中,您希望返回实际图像而不是路径。为每个请求将图像写入磁盘会非常慢。rails 中的 send_data 方法用于执行此操作。

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

g 是您粗鲁的实例。文件名根本不重要。图片标签的 src 应该只是生成图表的特定控制器方法。您可以使用普通的 url 助手来生成它。

于 2011-04-29T14:02:24.010 回答