回形针 - 无法访问任何已上传的图片

时间:2016-04-13 11:41:02

标签: ruby-on-rails image file-upload paperclip

我设法制作回形针并上传我的图片,但由于未知原因,即使我可以,Rails也找不到它们。 我使用Windows 10 + Rubymine 2016.1,在arborescence的项目中,我可以看到Rubymine用红色着色的几个文件夹。这些文件夹包含我上传的图片,但是当我尝试通过浏览器或<%= image_tag(@post.image.url(:small)) %>访问它们时,我获得了404状态

Folder's visual

这是我的模特

class Post < ActiveRecord::Base
  validates_presence_of(:titre, :contenu)
  has_attached_file :image, :styles => {
      :large => "400x400>",
      :medium => "300x300>",
      :thumb => "100x100#"
  },
  :default_url => "/images/:style/missing.png",
  :path => ":rails_root/public/system/:class/:attachment/:style/:filename",
  :url => '/images/:class/:id/:basename.:extension'
  validates_attachment_content_type :image, :content_type => /\Aimage\/.*\Z/
end

有人知道颜色的含义,或者如何解决我的404错误状态? 提前致谢

更新

在尝试一些虚荣的事情时,我在brut HTML中手动添加了以下内容:

<img src="/system/posts/images/large/sorry.jpg" alt="">我的形象显得很好。所以我想@ post.image.url创建的路径是错误的,因为它是/system/posts/images/000/000/012/medium/nope.jpg 我怎么能把它放在我的模型中?

1 个答案:

答案 0 :(得分:1)

没有为图像声明:small标识符。试试:

<%= image_tag(@post.image.url(:thumb)) %>

:path => "#{Rails.root}/public/system/:class/:attachment/:style/:filename"

另外我认为没有必要在模型atatchment配置中添加:url

对我来说工作正常如下:

has_attached_file :image,
     :styles => {
            :thumb => "100x100#",
            :small => "300x300>",
            :large => "700x700>"
            },                                             
            :path => "image/:class/:style/:id.:extension"