【问题标题】:Getting rendered images to the browsers in Rails在 Rails 中获取渲染图像到浏览器
【发布时间】:2008-11-06 07:18:14
【问题描述】:

我正在编写一个将数据处理成图表的 Rails 应用程序(使用 Scruffy)。我想知道如何将图形呈现为博客/字符串,然后将博客/字符串直接发送到要显示的浏览器(而不将其保存到文件中)?还是我需要渲染它,将其保存到文件中,然后在浏览器中显示保存的图像文件?

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    我认为您可以为此目的使用send_data:

    send_data data_string, :filename => 'icon.jpg', :type => 'image/jpeg', :disposition => 'inline'
    

    如果你把它放在一个控制器动作中——比如在图片控制器上显示,那么你需要做的就是在你的视图中包含以下内容(假设是 RESTful 路由):

    <%= image_tag picture_path(@picture) %>
    

    【讨论】:

    • Matt,如何在视图中引用这个文件?
    【解决方案2】:

    我想知道直接发送到浏览器是否是最好的方法?如果用户有可能重新加载页面,这种短路是否会导致任何缓存的可能性?我问是因为我真的不知道。

    【讨论】:

      【解决方案3】:

      “如果用户可能会重新加载页面,这是否会导致任何缓存可能性的短路?”

      否 - 无论您是从文件系统还是 send_data 提供服务都无关紧要。无论如何,浏览器正在从您的服务器获取数据。只需确保您已整理好 HTTP 缓存指令即可。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-10-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-06
        • 1970-01-01
        • 2012-04-23
        相关资源
        最近更新 更多