【发布时间】:2011-03-24 10:06:53
【问题描述】:
我今天刚开始使用 Paperclip,但在渲染图像时遇到了问题。经过一番争论,照片保存在正确的目录中,但出现路由/渲染错误:
ActionController::RoutingError(没有路由匹配“/public/system/products/19/original/puppies-3.jpg”)
但是,图像肯定保存在正确的目录中。这是我的产品模型中的内容:
class Product < ActiveRecord::Base
validates :title, :presence => true
validates :description, :presence => true
validates :category, :presence => true
validates_attachment_presence :photo
validates_attachment_size :photo, :less_than => 5.megabytes
attr_accessible :photo, :photo_file_name, :photo_content_type, :photo_file_size, :photo_updated_at
attr_accessible :title, :description, :category, :price
has_attached_file :photo, :styles => { :small => "150x150>", :large => "400x400>" },
:path => ":rails_root/public/system/products/:id/:style/:basename.:extension",
:url => "/system/products/:id/:style/:basename.:extension"
end
这是我的看法:
<%= image_tag @product.photo.url %>
目前它只是返回图像基名而不是图像本身,有什么想法吗?产品可作为 routes.rb 中的资源使用,但我是否需要以某种方式明确地提供照片?我对 Rails 也很陌生,所以有点挣扎......
【问题讨论】: