【Rails】CarrierWaveでqualityが指定できなくなっていた問題を解決

Railsプロジェクトをrmagickをv5系にバージョンアップしたところ、CarrierWaveを使ってアップロードした画像を圧縮している以下のコードが動かなくなっていました。 def quality(percentage) manipulate! do |img| img.write(current_path){ self.quality = percentage } unless img.quality == percentage img = yield(img) if block_given? img end end 「undefined method quality」というエラーが表示され、どうやら「self.quality」の呼び出しがエラーになっている模様。rmagickをバージョンダウンすれば問題は解決するのですが、今回は真面目に解決方法を探してみました。 ...

2023-05-22 · src128

RailsでImpressionistを使用してPVを計測する方法

Railsでページ毎の閲覧数(PV)を計測したい場合「Impressionist」というgemを使うのが定番のようです。 Google Analyticsで計測したアクセス数をアプリケーションから利用したい場合は、APIを使ってデータを持ってくる必要がありますが、Impressionistを使えばRailsのモデル経由で統計情報に素早くアクセスすることができます。 ...

2022-06-28 · src128

MacPorts+rbenv環境でrubyがビルドできない問題を解決

macOS Big SurのMacPorts環境で、rbenv(手動インストールした)を利用してRubyがビルドできなくなっている事に気がつきました。 例えば以下のコマンドを実行すると、最終的に「BUILD FAILED」と表示されインストールできないのです。 $ RUBY_CONFIGURE_OPTS="--with-openssl-dir=/opt/local --with-readline-dir=/opt/local" rbenv install 2.7.5 Downloading ruby-2.7.5.tar.bz2... -> https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.5.tar.bz2 Installing ruby-2.7.5... BUILD FAILED (macOS 11.6.1 using ruby-build 20211203) RUBY_CONFIGURE_OPTSはこれまでも指定していたのでこれは問題ないはずです…。 ...

2021-12-10 · src128