回形针图像未显示在rails app中

时间:2012-02-07 02:44:52

标签: ruby-on-rails ruby image paperclip

我正在使用回形针将图像上传到网站,但是当我这样做时,它会显示带有问号的图像占位符,而不是图像本身。我究竟做错了什么? 在模型中:

     attr_accessor :photo_file_name
     attr_accessor :photo_content_type
    attr_accessor :photo_file_size
    attr_accessor :photo_updated_at
    attr_accessible :photo


#paperclip-------------------------------
 has_attached_file :photo,
                 :url => "/:attachment/:id/:style/:basename.:extension",
                 :path => ":rails_root/public/:attachment/:id/:style/:basename.:extension"

在视图中:

<p id="notice"><%= notice %></p>
<div id="container">
<div id="content">
<%= image_tag @post.photo.url %>
<p>
  <b>Title:</b>
   <%= @post.title %>

并以我的形式:

<div class="field">
<%= post_form.file_field :photo %>
</div>

2 个答案:

答案 0 :(得分:1)

摆脱所有访问者的东西,并确保您的表单返回如下内容:

params[:post][:photo]

通常通过:

form_for @post do |f|
  f.file_field :photo
end

然后,在您的帖子控制器中,您可以更新或以其他方式保存附加了:photo的特定帖子。只需标记照片image_tag @post.photo即可显示照片,Paperclip可以完成剩下的工作。

我强烈建议您删除:url:path选项,并立即使用默认设置,这对大多数应用程序都很好。它包括system/目录,默认情况下在Capistrano下符号链接为共享,这很不错。

答案 1 :(得分:0)

您是否检查过图像文件是否已存储:rails_root / public /:attachment /:id /:style / yet?

右键单击图像占位符以检查图像的网址,是不是?