一覧ページの表示が重い、記事やユーザーが増えてきて「全部を一気に出すのはさすがにマズい」——そんなときに入れるのがページネーション(ページ分割)です。Railsだと Pagy と Kaminari の2択でまず迷うのでは…
続きを読むRailsのシステムテスト入門【RSpec × Capybara】|ブラウザ操作を自動テストして「壊れてないか」を担保する
「一覧画面やフォーム、リリースのたびに手で動かして確認するの、地味に面倒じゃありませんか?」——モデルの単体テストは書いているけど、「ユーザーが実際にブラウザで操作したときにちゃんと動くか」までは手作業、というチームは多…
続きを読むRails 8のparams.expect入門|require/permitからの書き換えと「ハマりどころ」
Rails 8 を触っていて、コントローラのストロングパラメータに params.expect という見慣れないメソッドが出てきて「これ、今までの params.require(:article).permit(…)…
続きを読む本番を止めないRailsマイグレーション入門|strong_migrationsで危険なDDLをデプロイ前に止める
マイグレーションを流したら本番サイトが固まった——そんなヒヤリとした経験はありませんか? ローカルでは一瞬で終わったadd_columnやadd_indexが、行数の多い本番テーブルではテーブル全体をロックし、その間クエ…
続きを読むRuby 3.4のfrozen_string_literal警告の対処法|”can’t modify frozen String”を安全に直す
Ruby 3.4にバージョンを上げたら、今まで動いていたコードで warning: literal string will be frozen in the future という警告や、FrozenError: can&…
続きを読むRails 8で脱Redis|Solid Queue / Solid Cacheの使い方と移行の判断基準【2026年版】
「Rails 8からはRedisがいらないらしい」——そんな話を聞いて、長年Sidekiq+Redisで運用してきた身としては、正直ちょっと身構えていませんか?背景ジョブもキャッシュも当たり前のようにRedisに任せてき…
続きを読むTailwind CSS v3→v4 移行でスタイルが効かない・崩れる時の原因と対処【逆引き】
「Tailwind CSS を v4 に上げたら、いきなり画面が崩れた」——そんな経験、ありませんか? v4 は 2025 年 1 月にリリースされ、Rust 製の新エンジン(Oxide)とCSSファースト設定への大きな…
続きを読むTailwind CSSで管理画面レイアウトを作る方法|固定ヘッダー・サイドバー開閉・スクロール領域まで
Tailwind CSS で管理画面やダッシュボードを作ろうとして、「ヘッダーを固定したいのにスクロールで消える」「サイドバーとメインのスクロールがうまく分かれない」「スマホでサイドバーをどう畳めばいいのか分からない」—…
続きを読むRails 8の認証ジェネレータをマジックリンク(パスワードレス)ログインに改造する方法|Basecamp Fizzyの実装を読む
Rails 8 の bin/rails generate authentication で認証を作ったあと、「パスワードを持たせるのやめたいな」と思ったことはありませんか? パスワードは、持たせた瞬間に運用コストが発生し…
続きを読むRails 8の認証ジェネレータとDeviseはどっちを使う?違い・生成コード・移行の判断基準まで解説
Rails 8 で bin/rails generate authentication という認証ジェネレータが標準搭載されました。これを見て「じゃあ、もう Devise は要らないの?」「新規アプリはどっちで作るのが正…
続きを読む

![params.require(:article).permit(:title, :body)がRails 8のparams.expect(article: [:title, :body])に1行で書き換わる比較図。記述量が2段から1行に、不正な形は500から400 Bad Requestになる。](https://toaru-kaihatsu.com/wp-content/uploads/2026/10/params-expect-before-after-304x143.png)







