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

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

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

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

Ruby on Rails 6

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Q&A

解決済

1回答

843閲覧

Cloudinaryの画像が本番環境で整形前画像と共に読み込まれてしまう。

ryo_koyo

総合スコア0

Ruby

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

Ruby on Rails 6

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

0グッド

0クリップ

投稿2021/05/04 14:38

前提・実現したいこと

rails6を利用し、herokuにデプロイ済の本番環境でcloudinaryを画像アップロード用に用いているのですが、画像を読み込む際に元の画像データと整形済の画像データの両方が読み込まれてしまいます。
整形済の画像データのみを読み込むようにするための方法を教えてください。

発生している問題・エラーメッセージ

Page Speed Insightsの改善できる項目の中に
cloudinaryで整形した画像ではなく元の画像に関する改善項目(適切なサイズの画像・次世代フォーマットでの画像の配信・オフスクリーン画像の遅延読み込み・効率的な画像フォーマット)が並んでいます。

該当のソースコード

ruby

1= cl_image_tag(File.basename(current_user.image.to_s), width: 100, height: 100, fetch_format: :auto, quality: :auto, use_root_path: true, crop: :scale)

下図のように画像が二重に読み込まれます。
2重に読み込み

試したこと

画像サイズを変えてみたり、元の画像を差し替えてみたりしましたがうまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

アップロード部分のrubyをここに載せます。

ruby

1class ImageUploader < CarrierWave::Uploader::Base 2 # Include RMagick or MiniMagick support: 3 # include CarrierWave::RMagick 4 # include CarrierWave::MiniMagick 5 6 # Choose what kind of storage to use for this uploader: 7 if Rails.env.production? 8 include Cloudinary::CarrierWave 9 else 10 storage :file 11 end 12 13 # Override the directory where uploaded files will be stored. 14 # This is a sensible default for uploaders that are meant to be mounted: 15 def store_dir 16 if Rails.env.test? 17 "uploads_#{Rails.env}/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 18 else 19 "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 20 end 21 end 22 23 # Provide a default URL as a default if there hasn't been a file uploaded: 24 def default_url(*args) 25 # # For Rails 3.1+ asset pipeline compatibility: 26 ActionController::Base.helpers.asset_path([version_name, 'User.png'].compact.join('_')) 27 # 28 # "/images/fallback/" + [version_name, "default.png"].compact.join('_') 29 end 30 31 # Provide a URL in a cloudinary::carrierwave uploader 32 def url(*args) 33 if cached? 34 "/#{cache_path}" 35 else 36 super 37 end 38 end 39 40 # Process files as they are uploaded: 41 # process resize_to_fit: [200, 200] 42 # 43 # def scale(width, height) 44 # # do something 45 # end 46 47 # Create different versions of your uploaded files: 48 # version :thumb do 49 # process resize_to_fill: [100, 100] 50 # end 51 52 # Add a white list of extensions which are allowed to be uploaded. 53 # For images you might use something like this: 54 def extension_whitelist 55 %w(jpg jpeg gif png) 56 end 57 58 # Override the filename of the uploaded files: 59 # Avoid using model.id or version_name here, see uploader/store.rb for details. 60 # def filename 61 # "something.jpg" if original_filename 62 # end 63 64 # define image's allowed size range 65 def size_range 66 1..500.kilobytes 67 end 68end

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

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

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

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

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

guest

回答1

0

自己解決

二重に裏でアップロードしていただけでした。。。

投稿2021/05/06 11:03

ryo_koyo

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問