前提・実現したいこと
local環境でrails tutorialのsample appを作っています。
第13章の画像をリサイズする箇所でエラーが出てしまいました。
どなたか、何か手掛かりが分かる方がいらっしゃれば、お助けお願い致します。
発生している問題・エラーメッセージ
画像をリサイズするために、gemのcarrierwaveとmini_magick、production環境にfogをインストールした後に、mini_magickに必要なImageMagickをインストールしました。
しかし、フォームから画像と共に投稿をアップロードしようとすると以下のようなエラーが出てしまいます。
投稿前
投稿後
該当のソースコード
Gemfile
source 'https://rubygems.org' gem 'bootsnap' gem 'rails', '5.2.1' gem 'faker', '1.7.3' gem 'carrierwave', '1.2.3'#carrierwaveとmini_magickだけ最新のversionに変えました gem 'mini_magick', '4.9.2' gem 'will_paginate', '3.1.6' gem 'bootstrap-will_paginate', '1.0.0' gem 'bcrypt', '3.1.12' gem 'bootstrap-sass', '3.3.7' gem 'puma', '3.9.1' gem 'sass-rails', '5.0.6' gem 'uglifier', '3.2.0' gem 'coffee-rails', '4.2.2' gem 'jquery-rails', '4.3.1' gem 'turbolinks', '5.0.1' gem 'jbuilder', '2.7.0' group :development, :test do gem 'sqlite3', '1.3.13' gem 'byebug', '9.0.6', platform: :mri end group :development do gem 'web-console', '3.5.1' gem 'listen', '3.1.5' gem 'spring', '2.0.2' gem 'spring-watcher-listen', '2.0.1' end group :test do gem 'rails-controller-testing', '1.0.2' gem 'minitest', '5.10.3' gem 'minitest-reporters', '1.1.14' gem 'guard', '2.13.0' gem 'guard-minitest', '2.4.4' gem 'win32console' end group :production do gem 'pg', '0.20.0' gem 'fog', '1.42' end # Windows環境ではtzinfo-dataというgemを含める必要があります gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
picture_uploader.rb
class PictureUploader < CarrierWave::Uploader::Base # Include RMagick or MiniMagick support: #include CarrierWave::RMagick include CarrierWave::MiniMagick process resize_to_limit: [400, 400] # Choose what kind of storage to use for this uploader: if Rails.env.production? storage :fog else storage :file end # storage :fog # Override the directory where uploaded files will be stored. # This is a sensible default for uploaders that are meant to be mounted: def store_dir "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" end # Provide a default URL as a default if there hasn't been a file uploaded: # def default_url(*args) # # For Rails 3.1+ asset pipeline compatibility: # # ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_')) # # "/images/fallback/" + [version_name, "default.png"].compact.join('_') # end # Process files as they are uploaded: # process scale: [200, 300] # # def scale(width, height) # # do something # end # Create different versions of your uploaded files: # version :thumb do # process resize_to_fit: [50, 50] # end # Add a white list of extensions which are allowed to be uploaded. # For images you might use something like this: def extension_whitelist %w(jpg jpeg gif png) end # Override the filename of the uploaded files: # Avoid using model.id or version_name here, see uploader/store.rb for details. # def filename # "something.jpg" if original_filename # end end
試したこと
Imagemagickがインストールされているか確認するために、コマンド上でmagick --versionを試しましたが、しっかりインストールされているようでした。
コマンドプロンプト上で出た表示
C:\Users\souda\environment\twitter_like_app>magick --version Version: ImageMagick 7.0.8-12 Q16 x64 2018-09-23 http://www.imagemagick.org Copyright: Copyright (C) 1999-2018 ImageMagick Studio LLC License: http://www.imagemagick.org/script/license.php Visual C++: 180040629 Features: Cipher DPC Modules OpenMP Delegates (built-in): bzlib cairo flif freetype gslib heic jng jp2 jpeg lcms lqr lzma openexr pangocairo png ps raw rsvg tiff webp xml zlib
環境変数のpath設定は以下のようになっています。
これは、ImageMagickをインストールした時に自動で設定されました。
C:\Program Files\ImageMagick-7.0.8-Q16
補足情報(FW/ツールのバージョンなど)
pc:windows10
rails:Rails 5.2.1
ruby:ruby 2.4.4
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。