Имя файла Carrierwave постоянно меняется на update_attributes
У меня есть модель Компания, и компания установила логотип загрузчика несущей волны.
class Company < ActiveRecord::Base
mount_uploader :logo, LogoUploader
Загрузка изображений работает, но у меня есть проблема с update_attributes. Когда пользователь хочет обновить только описание или название компании, но не загружать новое изображение - значение имени файла в БД все еще меняется каждый раз. Вот простой пример:
1.9.3-p545 :004 > a = Company.last
1.9.3-p545 :005 > a.update_attributes(:title => "test title 2")
(0.4ms) BEGIN
Company Exists (0.9ms) SELECT 1 AS one FROM `companies` WHERE (`companies`.`title` = BINARY 'test title 2' AND `companies`.`id` != 37) LIMIT 1
Company Load (0.7ms) SELECT `companies`.* FROM `companies` WHERE `companies`.`id` = 37 LIMIT 1
(0.7ms) UPDATE `companies` SET `title` = 'test title 2', `logo` = '1396206630_1f288be4.jpg', `updated_at` = '2014-03-30 19:10:30' WHERE `companies`.`id` = 37
(8.1ms) COMMIT
=> true
Почему логотип обновляется здесь с новым значением, даже если новое значение не было дано? Как этого избежать?