画像投稿時のエラー
コードは載せていませんが、上の画像の「新規投稿」画面で「ファイルを選択」から画像と、テキストを記入し、「投稿する」を押したところ、投稿はされたものの下記の画像のように画像だけが表示されない現象が起きました。
画面上では何がエラーなのか分からなかったので、「rails s」を実行したコンソールで何か出ていなか確認したところ、下記のようなエラー内容が出ていました。
MiniMagick::Error (You must have ImageMagick or GraphicsMagick installed):
翻訳すると、「ImageMagickまたはGraphicsMagickがインストールされている必要があります」といった内容。
そこでエラー内容を調べたところ、「ImageMagick」のインストールをして解決したという記事を複数見つけたので、早速試してみることに。
参考:【解決】Image Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: You must have ImageMagick or GraphicsMagick installed
brew install imagemagick
MacBookが物凄いファンの音と発熱をしながら、頑張ってインストールしてくれたお陰?で、インストール後、無事に画像投稿に成功しました!
次に画像を投稿せずに、テキストだけ投稿したらどうなるか試したところ、嫌な予感はしましたが、いつも通りエラーが出ました。 このエラーの対策はRailsチュートリアルに何か書いてあるだろうと思い検索したところ、「attached?」という論理値を返すメソッドを使って対処していることが分かりましたので、見様見真似で下記のように修正。
<%= image_tag @post.image.variant(resize: "570x570") %>
<%= image_tag @post.image.variant(resize: "570x570") if @post.image.attached? %>
修正したところ、テキストだけの投稿も表示することが出来ました!!!