так что у меня есть веб-приложение, которое отлично работает в разработке, и с помощью carrierwave и imagemagick я делаю некоторые изменения в фотографиях, которые мне нужно загрузить. Проблема в том, что когда на геройку, когда я спрашиваю основную версию фотографии, она все равно дает мне версию для большого пальца
class BannerUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
if Rails.env.development?
storage :file
else
storage :dropbox
end
def store_dir
if version_name.nil?
"uploads/#{model.class.to_s.underscore}/#{mounted_as}"
else
"uploads/#{model.class.to_s.underscore}/#{mounted_as}_#{version_name}"
end
end
process convert: :jpg
process :crop
process resize_to_limit: [1200, 260]
def crop
if model.crop_x.present?
manipulate! do |img|
x = model.crop_x.to_i
y = model.crop_y.to_i
w = model.crop_w.to_i
h = model.crop_h.to_i
r = model.crop_r.to_i
img.rotate r
img.crop([[w, h].join('x'), [x, y].join('+')].join('+'))
end
end
end
version :thumb do
process resize_to_fill: [640, 320]
end
def extension_whitelist
%w(jpg jpeg png)
end
def filename
if original_filename
"#{secure_token}.#{file.extension}"
elsif file
file.filename
end
end
protected
def secure_token
var = :"@#{mounted_as}_secure_token"
model.instance_variable_get(var) or model.instance_variable_set(var, SecureRandom.uuid)
end
end
это мой загрузчик
тогда, на мой взгляд, у меня есть image_tag(model.banner_url(:thumb)
, чтобы получить версию для большого пальца, и image_tag @model.banner_url
, чтобы получить большую версию. Проблема в том, что второй на моей локальной машине работает просто отлично, но когда на героку он выдает мне такой же образ первого. Он создает правильные папки и файлы и правильно их обрезает, но не получает правильную. Я использую
gem 'dropbox-sdk-v2', '~> 0.0.3'
gem 'carrierwave-dropbox', '~> 2.0'
как хранилище герою, с явно дропбокс аккаунтом