Направляющие - Скрепка, проверяющая размер вложения, когда это не должно быть?

У меня есть модель направляющих использование Скрепки, которая похожа на это:

  has_attached_file :image, :styles => { :normal => ['857x392#', :png] },
                    :url => '/assets/pages/:id/:basename.:extension',
                    :path => ':rails_root/public/assets/pages/:id/:basename.:extension'

  validates_attachment_size :image, :less_than => 2.megabytes

При попытке создать запись этой модели без вложения для загрузки возвращается ошибка проверки:

Были проблемы со следующими полями:

* Image file size file size must be between 0 and 2097152 bytes.

Я попытался передать обоих: allow_blank => верный и: allow_nil => верный после оператора проверки в модели, но ни один не работал.

Как может я позволять: параметр изображения, чтобы быть пробелом?

11
задан ground5hark 11 January 2010 в 21:52
поделиться

2 ответа

Валидация paperClip проверяет только диапазон и не заботится о : allow_nil => true

Что вы можете сделать, это попробуйте установить : min => nil или : min => -1 , может быть, это будет работать.

Обновление: Это не будет работать в последней версии Pormclip, поскольку они изменили, как работают валидации. То, что вы могли бы попробовать вместо этого:

validates_attachment_size :image, :less_than => 2.megabytes, 
   :unless => Proc.new {|model| model.image }
1
ответ дан 3 December 2019 в 07:12
поделиться
validates_attachment_size :image, :less_than => 25.megabytes, 
                          :unless => Proc.new {|m| m[:image].nil?}

работает идеально для меня

6
ответ дан 3 December 2019 в 07:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: