[Ruby on Rails]本番環境で画像のアップロードができない
解決したいこと
localhost環境では正常にできるのですが、本番環境で画像のアップロードができず解決策を探しています
ユーザー登録画面から画像未設定での登録はできるものの、プロフィール画像を設定しようとするとエラーになってしまう。
コードは以下の通りです。
ユーザー登録フォーム
<% provide(:title, 'Sign up') %>
<h1>新規登録</h1>
<div class="row">
<div class="col-md-6 col-md-offset-3">
<%= form_with(model: @user) do |f| %>
<%= render 'shared/error_messages' %>
(省略)
<%= f.label :avatar, 'プロフィール画像' %>
<%= f.file_field :avatar %>
<%= f.label :profile, '自己紹介' %>
<%= f.text_area :profile, autocomplete: 'off', :size =>"50x10" %>
<%= f.submit "登録", class: "btn btn-primary" %>
<% end %>
</div>
</div>
プロフィール画面のview
<% provide(:title, @user.name) %>
<div class="row">
<aside class="col-md-4">
<section class="user_info">
<h1>
<% if @user.avatar.present? %>
<%= image_tag asset_path(@user.avatar.url), size: 200 %> <!-- ユーザープロフィール画像 -->
<% else %>
<%= image_tag asset_path("8d27ad3552fd86901f4976429ad22ce2.png"), size: 200 %> <!-- プロフィール画像未設定時のデフォルト画像 -->
<% end %>
</h1>
<h1>
<%= @user.name%>
(以下省略)
ここで、show.html.erb
の画像表示部分で
<%= image_tag asset_path("8d27ad3552fd86901f4976429ad22ce2.png") %>
のようにasset_path
をつけると本番環境にも反映されるという記事を見つけ試してみたのですが上手くいきませんでした。
記事で「本番環境だと取り込んだ画像が表示されない」というような問題はよく見るけど、今回の場合「そもそも登録時に新しい画像を受け付けてくれない」って現象なのでこれとはまた違う問題ってことでしょうか。
些細なことでもご助言いただけると幸いです。
以下追記
MiniMagick::エラー ( ImageMagickまたはGraphicsMagick がインストールされている 必要があります )
との内容ですが、既にImageMagickはデバイスにインストールしており、試しにもう一度ターミナルにコマンドを打ってみましたがインストールされているとのことでした。
[% brew install imagemagick
==> Downloading https://formulae.brew.sh/api/formula.jws.json
==> Downloading https://formulae.brew.sh/api/cask.jws.json
######################################################################### 100.0%
Warning: imagemagick 7.1.1-24 is already installed and up-to-date.
To reinstall 7.1.1-24, run:
brew reinstall imagemagick
この後どのような手順になりますでしょうか…。