Я следую за этим tutorial for file size validation with Carrierwave, и он работает по большей части.Удостоверение файла размера носителя CarrierWave хранит изображение в каталоге/tmp/при завершении проверки
В моей модели ...
validates :image, :file_size => { :maximum => 2.megabytes.to_i }
Если я иду, чтобы загрузить изображение 5MB я получаю ошибку Изображение слишком большой (должен быть не более 2 МБ). Большой! Проблема заключается в том, что файл размером 5 МБ находится в /uploads/tmp/
. Очевидно, что это может стать чрезвычайно ресурсоемким, и я не хочу, чтобы файл сохранялся, если он был слишком большим.
Любые идеи? Заранее спасибо.
EDIT
Я использую Heroku и думаю, что это могло бы иметь что-то делать с кэшированием и формы вновь появится. См. here. Думаю, другими словами, что я пытаюсь сделать, это отключить форму redisplays для изображения? Потому что изображение показывает (необработанное и полученное из каталога /uploads/tmp/
). Хотя, если я перезагружаю страницу (не повторно заполняя форму), изображение исчезает из формы, но файл все еще остается в директории /tmp
. Надеюсь, это имеет смысл.
как бы эта работа при использовании nested_attributes, и было много изображений, так сказать, я имел это animal_images_attributes "=> {" 0 "=> {" image_cache "=>"», "image" => #, @ original_filename = "cat.jpg", @ content_type = "image/jpeg ", @ headers =" Content-Disposition: form-data; имя = \ "животное [animal_images_attributes] [0] [изображение] \"; filename = \ "cat.jpg \" \ r \ nContent-Type: image/jpeg \ r \ n ">, " _destroy "=>" false "}}}, " commit "=>" Создать рекламу "} –
Richlewis
с некоторыми настройками ive заставил его работать, собирается попробовать и итерации через массив хешей теперь – Richlewis