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

Попытка получить "Скрепку" для обновления или обработки неработающей

Со временем я изменил размер для больших пальцев класса Deal. Благодаря этим изменениям пользователи загружали на сайт, поэтому мало людей, у которых большие пальцы большого размера. Я хотел их разукрасить или обновить, поэтому я пошел в свой корень и набрал:

rake paperclip:refresh class=Deal

Не делал ничего для больших размеров. Затем я в script/console:

Deal.find(987).reprocess!

Возврат:

NoMethodError: undefined method `reprocess!' for #<Deal:0xb68a0988>
from /data/HQ_Channel/releases/20100607130346/vendor/rails/activerecord/lib/active_record/attribute_methods.rb:260:in `method_missing'
from (irb):7

Мой класс сделки таков:

=> Deal(id: integer, organization_id: integer, deal: string, value: string, what: string, description: string, image_file_name: string, image_content_type: string, image_file_size: integer, image_updated_at: datetime, created_at: datetime, updated_at: datetime, deal_image_file_name: string, deal_image_content_type: string, deal_image_file_size: integer, deal_image_uploaded_at: datetime)

Что я могу сделать, чтобы обработать оригинал, чтобы сделать большой палец правильным размером в параметрах текущего размера большого пальца?

ОБНОВЛЕНИЕ: Я нашел attachment.rb, включенный в папку "Скрепка". Интересно, что такие методы, как .save и .updated_at, работают. Но reprocess! и несколько других методов этого не делают. Что-нибудь пахнет явно неуместным?

4b9b3361

Ответ 1

Получил это!

Это потому, что скрепка не относится к объекту Model, а скорее к образцу объекта Model. Так написано правильно, это будет работать следующим образом:

Model.find(#).image.reprocess!

Ответ 2

Вы также можете использовать включенную задачу Rake:

$ rake paperclip:refresh CLASS=Deal

См. Википедия скрепки