質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

1300閲覧

CarrierWave+MiniMagickを導入したつもりですが、なぜかリサイズは愚か投稿ができなくなりました。

amby

総合スコア40

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2020/08/09 15:16

起きている現象

CarrierWave+MiniMagickを導入して投稿した画像をリサイズしようとしたのですが、画像
の投稿ができなくなってしまいました。
エラーが出るわけではなく、投稿が失敗して自分で設定した投稿失敗のメッセージが出てきます。

下記のコードの「process resize_to_fill: [700, 700, "Center"]」の部分を消すと投稿ができるようになります(当然画像のリサイズはできません)

何故なのでしょうか。もしご教示いただけましたら幸いです。

image_uploader.rb

Ruby

1class ImageUploader < CarrierWave::Uploader::Base 2 include CarrierWave::MiniMagick 3 # Include RMagick or MiniMagick support: 4 # include CarrierWave::RMagick 5 if Rails.env.production? 6 include Cloudinary::CarrierWave 7 else 8 storage :file 9 end 10 11 # Choose what kind of storage to use for this uploader: 12 storage :file 13 # storage :fog 14 15 # Override the directory where uploaded files will be stored. 16 # This is a sensible default for uploaders that are meant to be mounted: 17 def store_dir 18 "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 19 end 20 def default_url(*args) 21 ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_')) 22 end 23 #この部分がアップロードした写真を設定できるようにする記述とデフォルトの写真を設定している記述 24 25 # Provide a default URL as a default if there hasn't been a file uploaded: 26 # def default_url(*args) 27 # # For Rails 3.1+ asset pipeline compatibility: 28 # # ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_')) 29 # 30 # "/images/fallback/" + [version_name, "default.png"].compact.join('_') 31 # end 32 33 # Process files as they are uploaded: 34 # process scale: [200, 300] 35 # 36 # def scale(width, height) 37 # # do something 38 # end 39 40 # Create different versions of your uploaded files: 41 # version :thumb do 42 # process resize_to_fit: [50, 50] 43 # end 44 45 # Add a white list of extensions which are allowed to be uploaded. 46 # For images you might use something like this: 47 def extension_whitelist 48 %w(jpg jpeg gif png) 49 end 50 51 # Override the filename of the uploaded files: 52 # Avoid using model.id or version_name here, see uploader/store.rb for details. 53 # def filename 54 # "something.jpg" if original_filename 55 # end 56 process resize_to_fill: [700, 700, "Center"] 57 58end

micropsots/index

Ruby

1<% @microposts.each do |micropost| %> 2<%= render 'microposts/microposts', micropost: micropost %> 3<% end %>

_microposts.html.erb

Ruby

1<div class="card"> 2 <div class="posts"> 3 <div class="card_left"> 4 <%= image_tag micropost.image.url, class:"micropost_image" %> 5 </div> 6 <div class="card_right"> 7 <h1><%= micropost.title %></h1> 8 <p>日程<%= micropost.day %></p> 9 <p>場所<%= micropost.place %></p> 10 <p>募集人数<%= micropost.number %></p> 11 <p>内容<%= micropost.content %></p> 12 </div> 13 <div> 14 <!-- ここに削除ボタンと編集を作る --> 15 </div> 16 </div> 17</div>

その他

,micropost.rbに「mount_uploader :image, ImageUploader」の記述はしています。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

CarrierWave+MiniMagickを導入して

ImageMagick or GraphicsMagickについては導入しましたか?

投稿2020/08/09 21:57

asm

総合スコア15149

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

asm

2020/08/12 15:00

その記事を参考にした場合はPATHを設定していないかもしれないので rmagickを使わないといけないのかもしれませんね。 echo 'export PATH=... の行を実行する必要がありますが末尾が~/.bash_profileなのかは環境によって変わる可能性があります。 また、その後ターミナルを開き直した方が無難です。
amby

2020/08/13 07:16

uploaderにrequire 'mini_magick'を記述していなかったことが原因のようでした。投稿できるようになりました。親切にご教示いただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問