Carrierwave не работает: невозможно преобразовать nil в строку

Я использую Fog и загружаюсь на S3. Загрузка работает отлично в разработке, но когда в процессе производства она дает мне эту ошибку:

TypeError (can't convert nil into String):
  app/controllers/pictures_controller.rb:29:in `create'

(в этой строке сохраняется изображение). Это конец трассировки стека.

Когда я иду в консоль и делаю:

p = Picture.new(image: "~/rails_apps/my_app/current/app/assets/images/rails.png")

Это дает мне следующее в производстве:

CarrierWave::FormNotMultipart: CarrierWave::FormNotMultipart

... но не протестует в развитии. Возможно, это ключ.

Любые идеи, почему загрузка не работает на производстве?

Вот мой инициализатор carrierwave.rb:

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',                                         # required
    :aws_access_key_id      => ENV['AWS_ACCESS_KEY_ID'],                        # required
    :aws_secret_access_key  => ENV['AWS_SECRET_ACCESS_KEY']#,    # required
  }
  if Rails.env.production?
    config.fog_directory  = 'mydir'                     # required
  else
    config.fog_directory  = 'mydir-development'                     # required
  end
  config.fog_public     = true                                   # optional, defaults to true
  config.fog_attributes = {'Cache-Control'=>'max-age=315576000'}  # optional, defaults to {}
end
0
nl ja de
Привет @ Mörre, спасибо, что проверил этот вопрос. Эта строка читает , если @ picture.save . Приветствия.
добавлено автор bevanb, источник
@pjam yep, ключи оба считываются приложением rails при загрузке в консоли.
добавлено автор bevanb, источник
@pjam yep, ключи оба считываются приложением rails при загрузке в консоли.
добавлено автор bevanb, источник
Почему бы вам просто не взглянуть на строку приложения/контроллеров/pictures_controller.rb 29?
добавлено автор Mörre, источник
Итак, поскольку в этой строке нет строки, я думаю, что трассировка стека немного длиннее ...? Не нужно отвечать, я считаю, что вы можете сделать больше самостоятельно (и более легко, чем мы), прежде чем спрашивать :) Даже если кто-то сразу дает вам ответ, я рекомендую попробовать самостоятельно решить подобные вещи. Я могу уйти с этим ответом, я не знаю ваших обстоятельств или CarrierWave, поэтому не обижайтесь, если это не уместно, пожалуйста, пожалуйста.
добавлено автор Mörre, источник
Может быть, это глупый вопрос, но вы проверили, что AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY установлены на вашем prod-сервере?
добавлено автор pjam, источник
Может быть, это глупый вопрос, но вы проверили, что AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY установлены на вашем prod-сервере?
добавлено автор pjam, источник
Может быть, это глупый вопрос, но вы проверили, что AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY установлены на вашем prod-сервере?
добавлено автор pjam, источник

2 ответы

Я столкнулся с подобной проблемой, оказалось, что моя несущая волна и грохот тумана устарели (они отлично работали, пока я не перешел на Rails 4). Может быть, вы можете попробовать.

gem 'carrierwave', '0.9.0'
gem 'fog', '~> 1.3.1'
0
добавлено

Я столкнулся с подобной проблемой, оказалось, что моя несущая волна и грохот тумана устарели (они отлично работали, пока я не перешел на Rails 4). Может быть, вы можете попробовать.

gem 'carrierwave', '0.9.0'
gem 'fog', '~> 1.3.1'
0
добавлено
pro.ruby
pro.ruby
1 181 участник(ов)

Язык программирования Ruby Additional docs: https://rubyreferences.github.io/rubyref/ Invite: https://telegram.me/joinchat/Be4rsT2NuB3CyJaF26j1kA Кто хочет компилировать: @crystal_ru (его синтаксис основан на Ruby) Участник @proDOT

Ruby, Rails, Hanami | dry-rb
Ruby, Rails, Hanami | dry-rb
1 180 участник(ов)

https://telegram.me/rubyjob - Ruby Job По вопросам - @eugene_shved

Ruby School .us
Ruby School .us
1 045 участник(ов)

Чат-болталка для учеников руби-школы и не только. Правила: https://telegra.ph/Pravila-chata-Rubi-shkoly-03-13

Random Ruby Chat
Random Ruby Chat
589 участник(ов)

Правила публикации вакансий: https://t.me/codenamecrud/60865

Rubyata
Rubyata
333 участник(ов)

Коммюнити Ruby и Ruby On Rails Флуд не приветствуются. Вакансии можно публиковать только и ТОЛЬКО по пятницам с хештегом #вакансия.

Ruby Talks
Ruby Talks
236 участник(ов)

Национальная Флеймотека

RubyRush
RubyRush
189 участник(ов)

rubyrush.ru программирование для самых новичков

Rails Chat
Rails Chat
87 участник(ов)

You are welcome to discuss Ruby On Rails development process and other stuff