rails

PaperclipからActive Storageに移行した

Rails 5.2でActive Storageが使えるようになった。プライベートで作っているRailsアプリケーションをPaperclipからActive Storageに移行してみたのでその記録です。 Active Storageの概要 Railsガイドを読みましょう Active Storage の概要 | Rails ガイド a…

Rails.cache と Redis::Store と Rack::Attack

自分用メモ。 遭遇した問題 Rack::Attack で redis に保存したデータに有効期限が設定されない namespace を定義した時だけ問題が発生する 結論 Redis::Store が古かった。1.1.4 を使っていたが、有効期限系のメソッド(expire, setex, ttlなど)が namespace …

Rails で URL と ルーティング設定のマッチ処理をどこでやってるのか調べたログ

きっかけ Railsアプリケーションでは URL の末尾に .json などと書いてレスポンスのフォーマットを指定することができる。先日、このフォーマット部分の末尾に記号をつけてリクエストしても正しく動くということに気がついた。 /v1/users.json (これが正しい…

Rails のクエリキャッシュの仕組みを調べた

はじめに Rails のログファイルに CACHE (0.0ms) という行が出力されることがある。 CACHE (0.0ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = '1321459' LIMIT 1 [["id", "1321459"]] ここから以下のことがわかる。 このリクエストでこのクエリが…

Ruby と Rails を覚えるために約1ヶ月半でやったこと

仕事で Rails を使ったサービスを担当し始めて約1ヶ月半、Ruby と Rails にもだいぶ慣れてきたので、ここまでどうやって勉強してきたか書いておこうと思います。いや、まだ初心者もいいところなのですが、そのうち忘れてしまって今しか書けなそうなので、書…