不使用Carrierwave显示图像

时间:2013-05-07 10:24:54

标签: ruby-on-rails carrierwave

我一直想找一种方法将照片上传到数据库并在页面上显示照片。我正在尝试载波。我认为它可以正确上传照片,但是当它显示图像时,它所做的就是给出它的位置(url)。

这是上传者

class Image < ActiveRecord::Base
attr_accessible :image, :title
  mount_uploader :image, ImageUploader
end

以下是用于上传文件的表单

<%= form_for @image, :html => {:multipart => true} do |f| %>
  <% if @image.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(@image.errors.count, "error") %> prohibited this image from being saved:</h2>

      <ul>
      <% @image.errors.full_messages.each do |msg| %>
        <li><%= msg %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

  <div class="field">
    <%= f.label :image %><br />
    <%= f.file_field :image %>
  </div>
  <div class="field">
    <%= f.label :title %><br />
    <%= f.text_field :title %>
  </div>
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

这是为了显示图像

<p id="notice"><%= notice %></p>

<p>
  <b>Image:</b>
  <%= @image.image_url.to_s %>
</p>

<p>
  <b>Title:</b>
  <%= @image.title %>
</p>


<%= link_to 'Back', images_path %>

打印出来的是:

图片:/uploads/image/image/2/946612_524939910875157_1455921715_n.jpg

标题:海报

1 个答案:

答案 0 :(得分:4)

要显示此图片,请尝试此操作。

<%= image_tag @image.image_url.to_s if @image.image_url.present? %>