Я хочу поместить свой аватар в aws для использования в приложении Heroku.Моя установка кажется правильной, но сервер rails не запускается.
Я обновил мой carrierwave.rb и avatar_uploader, а также мои самоцветы
carrierwave.rb
CarrierWave.configure do |config|
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => ENV['aws_access_key_id'],
:aws_secret_access_key => ENV['aws_secret_access_key'],
:region => 'us-east-2'
}
if Rails.env.test? || Rails.env.cucumber?
cpmfig.storage = :file
config.enable_processning = false
config.root ="#{Rails.root}/tmp"
else
config.storage = :fog
end
config.cache_dir = "#{Rails.root}/tmp/uploads"
config.fog_directory = ENV['s3_bucket_name']
end
module Carrierwave
module Minimagick
def quality(percentage)
img.quality(percentage.to_s)
img = yield(img) if block_given?
img
end
end
end
avatar_uploader.rb
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
include Sprockets::Rails::Helper
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :thumb do
process resize_to_fit: [250, 250]
end
def extension_whitelist
%w(jpg jpeg gif png)
end
end
gemfile
gem 'fog'
gem 'fog-aws'
gem 'carrierwave'
gem 'mini_magick'
Когда я запускаю сервер, я получаю ошибку:
$elandro-MBP:prjectAlpha etiennelandro$ rails s
Traceback (most recent call last):
29: from bin/rails:4:in `<main>'
28: from bin/rails:4:in `require'
27: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/commands.rb:16:in `<top (required)>'
26: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/command.rb:44:in `invoke'
25: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/command/base.rb:63:in `perform'
24: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch'
23: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command'
22: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/thor-0.20.3/lib/thor/command.rb:27:in `run'
21: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/commands/server/server_command.rb:130:in `perform'
20: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/commands/server/server_command.rb:130:in `tap'
19: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/commands/server/server_command.rb:133:in `block in perform'
18: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/railties-5.1.6.2/lib/rails/commands/server/server_command.rb:133:in `require'
17: from /Users/etiennelandro/Documents/prjectAlpha/config/application.rb:9:in `<top (required)>'
16: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler.rb:114:in `require'
15: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:65:in `require'
14: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:65:in `each'
13: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:76:in `block in require'
12: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:76:in `each'
11: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:81:in `block (2 levels) in require'
10: from /Users/etiennelandro/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0/bundler/runtime.rb:81:in `require'
9: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog.rb:12:in `<top (required)>'
8: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog.rb:12:in `require'
7: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers.rb:9:in `<top (required)>'
6: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers.rb:9:in `require'
5: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers/aws.rb:4:in `<top (required)>'
4: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers/aws.rb:5:in `<module:Fog>'
3: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers/aws.rb:7:in `<module:AWS>'
2: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-0.7.2/lib/fog/providers/aws.rb:7:in `extend'
1: from /Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-core-2.1.2/lib/fog/core/provider.rb:13:in `extended'
/Users/etiennelandro/.rvm/gems/ruby-2.5.3/gems/fog-core-2.1.2/lib/fog/core/provider.rb:13:in `[]=': no implicit conversion of Symbol into Integer (TypeError)
Я пытался проверить журнал, но я не очень понял в нем, за исключением того, что что-то не так с приложением rb, строка 9. Application.rb
, строка 9: Bundler.require(*Rails.groups)
Можете ли вы увидеть, что я делаю не так, пожалуйста?