Подтвердить что ты не робот

Rails 3, Paperclip - пользовательские интерполяции

У меня были некоторые проблемы, делающие обычную Interpolation, прошедшие через каждый пример, который я мог найти в Интернете, но независимо от того, что я сделал, не имел успеха. На данный момент у меня есть это:

Model

has_attached_file :photo,
  :path => ":rails_root/public/images/:img_name-:style.:extension",
  :styles => {
    :original => '100x100',
    :thumb => '30x30'
}

Инициализаторы/paperclip.rb

Paperclip.interpolates :img_name do |attachment, style|
  attachment.instance.img_name
end

img_name - поле, заполненное формой при загрузке с изображением. Ошибка, которую я получаю при загрузке:

Недействительный аргумент - (C:/Users/.../stream20110410-384-stl2lk20110230-213-1fm2bab, C:/.../photo_upload/public/images/: img_name-original.jpg)

4b9b3361

Ответ 1

Кажется, работает, если он непосредственно в модели:

class Model < ActiveRecord::Base

  Paperclip.interpolates :img_name do |attachment, style|
    attachment.instance.img_name
  end

  has_attached_file :photo,
    :path => ":rails_root/public/images/:img_name-:style.:extension",
    :styles => {
      :original => '100x100',
      :thumb => '30x30'
    }

end