NoMethodError: undefined method `read' for nil:NilClass when calling du.recreate_versions!(:some_version)

Viewed 556

Help. CarrierWave's receate_versions! isn't working for me. Carrierwave version: 1.1.0. Code:

# document_image_uploader.rb

  ...
  version :some_version, if: :image? do
    process :resize_to_fit => [2048, 2048]
  end

  # See http://stackoverflow.com/a/30897174/590767
  def image?(new_file)
    new_file.content_type.start_with? 'image'
  end

In the console:

> du = DocumentImageUploader.new # this is a CarrierWave::Uploader::Base subclass

> du.recreate_versions!(:some_version)
NoMethodError: undefined method `read' for nil:NilClass
    from ~/.rvm/gems/ruby-2.2.7/gems/carrierwave-1.1.0/lib/carrierwave/uploader/cache.rb:81:in `sanitized_file'
    from ~/.rvm/gems/ruby-2.2.7/gems/carrierwave-1.1.0/lib/carrierwave/uploader/versions.rb:224:in `recreate_versions!'
    from (irb):5
    from ~/.rvm/gems/ruby-2.2.7/gems/railties-4.2.5/lib/rails/commands/console.rb:110:in `start'
    from ~/.rvm/gems/ruby-2.2.7/gems/railties-4.2.5/lib/rails/commands/console.rb:9:in `start'
    from ~/.rvm/gems/ruby-2.2.7/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:68:in `console'
    from ~/.rvm/gems/ruby-2.2.7/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
    from ~/.rvm/gems/ruby-2.2.7/gems/railties-4.2.5/lib/rails/commands.rb:17:in `<top (required)>'
    from bin/rails:8:in `require'
    from bin/rails:8:in `<main>'

Also wrote it on the GitHub issues of the project:

https://github.com/carrierwaveuploader/carrierwave/issues/2186

0 Answers
Related