Rails 3 渲染二进制内容

发布于 2024-11-10 14:31:53 字数 337 浏览 2 评论 0原文

我需要在网页上呈现二进制内容(图像)。我正在使用二进制数据类型将图像保存在数据库中。现在我需要从数据库中迭代可用图像并在网页上呈现。

请检查我正在执行的以下代码。 Icon是素材中的图像列名称。

// iterating all materials
<% @materials.each do |material| %>
     // for each material
     <span><%= image_tag(material.icon) %></span>
<% end %>

任何帮助将不胜感激..

I need to render binary content(images) on web page. I'm saving images in the database with datatype binary. Now I need to iterate available images from the database and render on webpage.

Please check the below code that I'm doing. Icon is the image column name in material.

// iterating all materials
<% @materials.each do |material| %>
     // for each material
     <span><%= image_tag(material.icon) %></span>
<% end %>

Any help would be greatly appreciated..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黑色毁心梦 2024-11-17 14:31:53

您需要按照以下方式向控制器添加一个操作(从此处复制):

def image
    @material = Material.find(params[:id])
    send_data @material.icon, :type => 'image/png',:disposition => 'inline'
end

然后在 image_tag 中调用该操作的路径。显然,您需要确保 :type 字段具有正确的 MIME 类型、添加路由等。

You need to add an action to your controller along these lines (cribbed from here):

def image
    @material = Material.find(params[:id])
    send_data @material.icon, :type => 'image/png',:disposition => 'inline'
end

Then call the path to that action in your image_tag. You obviously need to make sure the :type field has the right MIME type, add a route, etc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文