Чтобы высушить мой код для изображений вложений, я создал инициализатор для переопределения переменной @default_options
, используемой Paperclip.
Таким образом, мне не нужно снова и снова указывать URL, путь и хранилище, которые я хочу.
Я бы хотел пойти дальше и включить в него проверку, но я не могу заставить ее работать ...
Есть идеи?
РЕДАКТИРОВАТЬ 1: Я хочу, по крайней мере, проверить наличие и размер.
РЕДАКТИРОВАТЬ 2: Часть моего текущего кода
module Paperclip
class Attachment
def self.default_options
if Rails.env != "production"
@default_options = {
:url => "/assets/:class/:attachment/:id/:style/:normalized_name",
:path => ":rails_root/public/assets/:class/:attachment/:id/:style/:normalized_name",
:default_style => :original,
:storage => :filesystem,
:whiny => Paperclip.options[:whiny] || Paperclip.options[:whiny_thumbnails]
}
else
...
end
end
end
normalized_name
- внешняя функция, feat: http://blog.wyeworks.com/2009/7/13/paperclip-file-rename
РЕДАКТИРОВАТЬ 3:
Этот блог: http://omgsean.com/2009/02/overriding-paperclip-defaults-for-your-entire-rails-app/ представляет хеш default_options
с помощью клавиши validations
.
Так что это возможно, но пока не найдено.