プログラミング– category –
-
【Rails】Active Storageとは?基本概念を徹底解説
Ruby on Rails 8を用いたWebアプリケーション開発において、ファイルアップロード機能とその管理は一般的な要件です。Railsに標準で組み込まれている「Active Storage」は、この課題に対応するために設計されたフレームワークであり、ファイルのアップロー... -
【Rails】Turbo Framesで実現!JavaScript不要のインライン編集
Webアプリケーションでページ遷移なしにデータを編集できる「インライン編集」は便利ですが、従来の実装はJavaScriptを多用し複雑になりがちでした。Ruby on RailsのHotwireに含まれるTurbo Framesは、この課題を解決します。サーバーサイドでHTMLを生成す... -
【RSpec】shoulda-matchers 入門:テストコードを簡潔にする使い方と設定方法
RSpecでのRailsテスト記述、もっと楽にしたいと思いませんか? shoulda-matchers は、テストコードを驚くほど簡潔にし、可読性を高めるための強力な味方です。この記事では、shoulda-matchers の導入から実践的な使い方まで、初心者にもわかりやすく解説し... -
RSpec FactoryBot【実践編】:テスト効率と保守性を高めるTips & ベストプラクティス
これまでに【入門編】で基本を学び、【応用編】でTraitや関連付けなどのテクニックを習得しました。 この【実践編】では、FactoryBotをRSpecテストの中でさらに効果的に活用し、テスト全体の効率と保守性を高めるためのTipsとベストプラクティスを集めまし... -
RSpec FactoryBot【応用編】:関連付け・Trait・コールバック活用術
【入門編】では、FactoryBotの基本的な使い方とファクトリ定義を学びました。テストデータ作成が少し楽になったのではないでしょうか? この【応用編】では、FactoryBotをさらに使いこなすための応用テクニックに焦点を当てます。具体的には、以下の機能を... -
RSpec FactoryBot【入門編】:Railsテストデータ作成の基本と使い方
「RSpecのテストデータ準備、もっと楽にならないかな…」「FactoryBotって便利そうだけど、何から始めればいいの?」 Rails開発でテストを書く際、多くの人がテストデータの準備に手間を感じています。そんな悩みを解決してくれるのが FactoryBot です。 Fa... -
Rails Devise入門ガイド(3): 認証画面レイアウト適用とTablerビューカスタマイズ
前回(第2回) では、Deviseの基本的な認証フロー(サインアップ、サインイン、サインアウト)を実装し、current_user などのヘルパーを使ってアクセス制御を行いました。これで機能は動くようになりましたが、いくつかの課題が残っていましたね。 認証画... -
Rails Devise入門ガイド(2): ログイン・ログアウト・新規登録の実装と基本ヘルパーの使い方
前回(第1回)では、DockerとTablerを使ったRails開発環境に、定番の認証GemであるDeviseをインストールし、初期設定、Userモデルの作成、そして認証関連のURL(/admin/sign_inなど)を/admin配下に設定しました。Deviseを動かすための土台はできましたが... -
Rails 8 + Importmap/Propshaft環境で高機能UI「Tabler」導入手順 完全ガイド (Node.js活用)
最新のRails 8(またはRails 7以降)では、Importmap と Propshaft が標準となり、Node.jsへの依存を減らしたシンプルなフロントエンド開発が推奨されています。しかし、「高機能な管理画面UIを効率よく導入したい」「外部ライブラリのCSSやJSのアセット管... -
Rails Devise入門ガイド(1): インストールから初期設定、Userモデル生成まで
Ruby on RailsでWebアプリケーションを開発する際、認証機能(ログイン、サインアップなど)の実装は避けて通れない課題の一つです。 数ある選択肢の中でも、Devise Gem はRailsコミュニティにおける認証ソリューションのデファクトスタンダードとして広く... -
Rails Active Storage: Docker ComposeとMinIOでローカルS3開発環境を構築
Ruby on RailsのActive Storageは、Amazon S3などのクラウドオブジェクトストレージと連携してファイルを管理するのに非常に便利です。しかし、開発やテストの段階で、実際のクラウドストレージを利用するのはコストがかかったり、セットアップが手間だっ... -
RSpecテスト共通化の鍵!shared_examplesとshared_context 完全ガイド
RSpecでテストを書いていると、「あれ、このテストコード、他の場所でも書いたな…」と感じることがありませんか?特に、似たような振る舞いをするクラスや、同じようなセットアップが必要なテストが増えてくると、コードの重複は避けられない問題になりが...