default_style не работает в Paperclip на Rails 3.2.1 - PullRequest
1 голос
/ 21 марта 2012

Я пытаюсь использовать default_style в своем приложении, которое работает на Paperclip 2.2.5 на Rails 3.2.1.По какой-то причине он все еще не соответствует исходному размеру, даже когда я указываю использовать меньший размер.Вот модель, в которой я определил прикрепленный файл:

class Profile < ActiveRecord::Base
has_one :user

has_attached_file :cover_image,
                :styles => { :thumb => "x70", :super_thumb => "x28" },
                :default_style => :thumb,
                :url => "/assets/products/:id/:style/:basename.:extension",  
                :path => ":rails_root/public/assets/products/:id/:style/:basename.:extension",
                :default_url =>  "/assets/products/default/default_:style_pic.jpg"

end

Когда пользователь создает свой профиль без загрузки изображения, туда помещается изображение по умолчанию с оригинальным размером.Проблема в том, что я хочу, чтобы это был размер: thumb, как указано выше.Кто-нибудь знает, почему это не работает?

Спасибо.

1 Ответ

2 голосов
/ 24 марта 2012

Неважно, я понял это. Для тех, у кого может быть такая же проблема, добавьте файл с именем paperclip.rb в config / initializer и поместите это:

module Paperclip
class Attachment
def default_options
  @default_options ||= {
    :default_url       => "/assets/products/default/:style/Testudo1920.jpg",
    :default_style     => :thumb,
    :storage           => :filesystem,
  }
end
end
end

и затем в модель, к которой я прикрепляю файлы, я добавил attr_accessor:

class Profile < ActiveRecord::Base
has_one :user

attr_accessor :default_url, :default_style

has_attached_file :cover_image,
                :styles => {:thumb => "x70", :header => "x50", :super_thumb => "x28"},
                :default_style => :header,
                :url => "/assets/products/:id/:style/:basename.:extension",  
                :path => ":rails_root/public/assets/products/:id/:style/:basename.:extension",
                :default_url =>  "/assets/products/default/:style/Testudo1920.jpg"

end
...