Ruby on Rails– tag –
-
Rails Devise入門 (第1回):インストールと基本設定
Railsアプリケーション開発において認証機能は頻繁に要求されます。Deviseは、この認証レイヤーの実装を標準化・効率化するGemであり、デファクトスタンダードとして広く利用されています。 本シリーズではDeviseの導入から応用までをステップバイステップ... -
Rails Active Storage: Docker ComposeとMinIOでローカルS3開発環境を構築
Ruby on RailsのActive Storageは、Amazon S3などのクラウドオブジェクトストレージと連携してファイルを管理するのに非常に便利です。しかし、開発やテストの段階で、実際のクラウドストレージを利用するのはコストがかかったり、セットアップが手間だっ... -
RSpecテスト共通化の鍵!shared_examplesとshared_context 完全ガイド
RSpecでテストを書いていると、「あれ、このテストコード、他の場所でも書いたな…」と感じることがありませんか?特に、似たような振る舞いをするクラスや、同じようなセットアップが必要なテストが増えてくると、コードの重複は避けられない問題になりが... -
もうNode.jsは不要?Rails Importmapの基本と仕組みを理解する
Rails 7の登場以降、フロントエンドのJavaScript管理方法として「Importmap」が標準になりました。これにより、従来の開発でしばしば必要だったNode.js環境や複雑なビルドツールの設定から解放される可能性が出てきました。「Webpackerは複雑だった」「Nod... -
【Rails】Policyオブジェクト入門|認可ロジックを整理する
Ruby on Rails (以下、Rails) でWebアプリケーションを開発する際、ユーザー権限に基づいた操作制御、すなわち「認可(Authorization)」の実装は避けて通れません。しかし、この認可ロジックがコントローラーやモデルに散在すると、コードは複雑化し、メ... -
WSL2 Dockerで作る Rails 8.0.2 + Ruby 3.4.2 + MySQL 開発環境構築ガイド
この記事では、Docker Desktopを使用せず、WSL2 (Windows Subsystem for Linux 2) ディストリビューション内に直接インストールしたDocker EngineとDocker Compose v2 を利用して、Ruby 3.4.2 + Rails 8.0.2 + MySQL 8.0 のWebアプリケーション開発環境を... -
【Rails】Valueオブジェクト入門|値に意味と振る舞いを持たせる
Ruby on Railsで開発する際、モデルの属性として string 型のメールアドレス、integer 型の金額、string 型の郵便番号などをそのまま使うことはよくあります。しかし、これら組み込み型(プリミティブ型)を直接扱うことには、いくつかの潜在的な問題があ... -
Turbo入門|Turbo Framesで実現する部分更新とコンポーネント分割|Rails × Hotwire
Turbo Framesを使うと、ページの一部分だけを簡単に更新できます。リンクやフォームをクリックすると、ページ全体ではなく、指定したフレーム内だけが更新されます。RailsアプリケーションでTurbo Framesを使った部分更新の方法を詳しく解説します。 Turbo... -
Turbo入門|JavaScriptの扱い方とキャッシュ戦略を理解する|Rails × Hotwire
Turboはリンククリックやフォーム送信時にページ全体を再読み込みせず、必要な部分だけを更新することで高速な体験を提供します。しかし、この仕組みによりJavaScriptの扱い方やキャッシュ戦略に注意が必要になります。この記事では、Turboアプリケーショ... -
Turbo入門|Turbo Streamsでリアルタイム更新を実装する方法|Rails × Hotwire
Turbo Streamsを使うと、ページの一部分をリアルタイムに更新したり、ユーザーの操作に応じてDOMを部分的に変更したりできます。RailsアプリケーションでTurbo Streamsを使ったリアルタイム更新の方法を詳しく解説します。 Turbo Streamsとは? Turbo Stre... -
Turbo入門|Morphingで実現するスムーズなページ更新|Rails × Hotwire
Turbo Driveはページ遷移時にフルページリロードを避けることで高速なナビゲーションを実現しますが、ページの再読み込み(リフレッシュ)時にも、さらにスムーズな体験を提供することができます。 特にフォーム送信後に同じページにリダイレクトされるよ... -
Turbo入門|Turbo Driveでページ遷移を高速化する方法|Rails × Hotwire
Turbo Driveは、Rails 7から標準搭載されたHotwireの一部で、JavaScriptをほとんど書かずにSPAのような高速でスムーズなページ遷移を実現します。この記事では、Turbo Driveの基本的な仕組みやページ遷移の種類、履歴管理、カスタマイズ方法などを初心者向...
12