回形针不生成缩略图,无声地失败

时间:2013-01-22 01:40:03

标签: ruby-on-rails imagemagick paperclip

我把头发拉到这里......我不知道为什么这样做不起作用。

我使用的是ruby 1.8.7,rails 3.0.19,paperclip 2.7.4。

我的模特:

has_attached_file :photo,  :styles => {
:logo => "60x20",
:widget => "60x40",
:thumb=> "100x100",
:small  => "150x150>" },
:url  => "/images/companies/:id/:style/:basename.:extension",
:path => ":rails_root/public/images/companies/:id/:style/:basename.:extension",
:default_url => "/images/bb_noimage.png"

#validates_attachment_presence :photo
validates_attachment_size :photo, :less_than => 3.megabytes
validates_attachment_content_type :photo, :content_type => ['image/jpeg', 'image/png','image/gif','image/jpg']

观点:

<%= image_tag "#{get_image_url(company.id,company.photo_file_name,"small")}"%>

问题是某些文件夹将具有“大”和“拇指”大小,但不会有“小”和“徽标”大小 - 我在很长一段时间没有使用它后重新访问该网站。我希望生成缺少的样式。我尝试了这些命令,第一个显示没有错误,但第二个显示下面的错误。 Niether生成所需的缩略图。谢谢你的帮助!

bundle exec rake paperclip:refresh:thumbnails CLASS=Company
bundle exec rake paperclip:refresh:missing_styles --trace

** Execute paperclip:refresh:thumbnails
rake aborted!
No such file or directory - /Users/q/Sites/baiabase-old/public/system/paperclip_attachments.yml
/Users/q/.rvm/gems/ruby-1.8.7-p302@baia-old/gems/paperclip-2.7.4/lib/paperclip/missing_attachment_styles.rb:25:in `initialize'

2 个答案:

答案 0 :(得分:1)

添加到您的模型

    attr_accessible :photo, :photo_file_name

    has_attached_file :photo,  :styles => {.....
....your code...

和观点

<%= image_tag @company.photo.url(:small) %>

答案 1 :(得分:-1)

还有更多的礼物,

对于原始512x512像素的照片会更好,将占用服务器硬盘上更少的空间

添加样式:original => "512x512", 所有附加照片最大转换为此分辨率,可节省硬盘空间。

:less_than => 3.megabytes更改为:less_than => 5.megabytes 如果用户尝试附加大于3 MB的照片,则无法将其更改为5 MB

用户可以添加分辨率为3000 x 3000或更高(<= 5 mb)的照片,但全部平滑将转换为512 x 512像素,重量不超过20 KB。

如果您想将所有附加照片转换为jpg(格式),请尝试:thumb => {:geometry => '100x100#', :format => :jpg},

并专注于宽高比4:3 '100x100#'和宽高比16:9 '100x100>'