在Heroku上上传图片,按钮不会触发任何操作

时间:2019-03-09 02:58:21

标签: ruby-on-rails heroku carrierwave

我有一个用户模型,我想在其中添加带载波的头像。

在注册表中

<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
  <%= f.error_notification %>
     #[...]
    <%= f.file_field :avatar %>
 <% end %>

一切都在本地工作,但是一旦在Heroku上我都无法加载任何图像,添加图像按钮不会触发任何操作(尽管js控制台中没有错误)。 Heroku日志不要抱怨...

class AvatarUploader < CarrierWave::Uploader::Base
  include CarrierWave::MiniMagick

  storage :file

  if Rails.env.production?
    storage :fog
  else
    storage :file
  end

  process resize_to_fill: [395, 595]

  version :thumb do
    process resize_to_fill: [280, 280]
  end

  def default_url(*args)
    "/images/fallback/" + [version_name, "random.jpg"].compact.join('_')
  end

  def cache_dir
    "#{Rails.root}/spec/support/uploads/tmp"
  end 

  def store_dir      
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  def extension_white_list
    %w(jpg jpeg gif png)
  end
end

initializers / carrier_wave.rb

if Rails.env.production?
  CarrierWave.configure do |config|
    config.fog_credentials = {
      # Configuration for Amazon S3
      :region                => 'eu-west-3',
      :provider              => 'AWS',
      :aws_access_key_id     => ENV['AWS_ACCESS_KEY_ID'],
      :aws_secret_access_key => ENV['AWS_SECRET_ACCESS_KEY']

    }
    config.fog_directory     =  ENV['S3_BUCKET_NAME']
  end
end

我在另一个帐户中使用相同的密钥,并且可以正常工作(只是存储桶名称不同)

0 个答案:

没有答案