忍者スクール
職業訓練講師が教える
実務直結「Ruby/Rails/DB設計」
TOP
Ruby記事
Rails記事
データベース記事
ログイン
サイトマップ
下記、当サイトのサイトマップです。
サイトマップ
Ruby
Ruby の基本
入門
まず使いたい標準ライブラリ:date/json/csv/open-uri の実用サンプル
文字エンコーディング入門:UTF-8・マジックコメント・外部/内部エンコーディング
RubyでWeb/API開発を始めるには?Rails/Sinatraの選び方とロードマップ
Gemとは?RubyGemsとBundlerの仕組み・依存関係管理を図解で理解
コーディング規約と静的チェック:Rubocopの導入から運用まで
初心者がつまずくエラー集:NoMethodError / NameError / SyntaxErrorの原因と対処
配列・ハッシュ・文字列の超基礎:最低限覚える作成・参照・更新テクニック
“すべてはオブジェクト”を体感:irbで学ぶRubyのオブジェクト指向
Rubyとは何か?初心者向けにできること・特徴・他言語との違いをやさしく解説
Rubyの歴史とバージョンの違い:2系/3系の互換性と性能アップを理解しよう
Rubyの始め方ガイド:インストールから最初のHello Worldまで(Windows/Mac/Linux)
学習ロードマップ:基礎→OOP→テスト→Web→運用まで効率的に進める方法
標準入出力の基本:puts・print・p の違いとデバッグに効く使い分け
irb・pry入門:対話型シェルでRubyを最速で学ぶ使い方と便利ワザ
Rubyプログラムの実行方法まとめ:スクリプト・REPL・Shebang・実行権限の基本
Rubyの基本用語を一気に理解:オブジェクト・メソッド・クラス・モジュールとは?
コメントとドキュメントの書き方:RDoc/YARDで読みやすいコードにするコツ
初心者向け開発環境の作り方:VS Code設定・拡張機能・日本語対応(保存版)
よく使うコマンド一覧と使い方:ruby・gem・bundle・irb を完全解説
動的型付けを正しく理解:柔軟さのメリットとバグを防ぐ心得
Ruby のインストール・環境構築
入門
Linux(Ubuntu/CentOS)でRubyを入れる:apt/dnf/ソースビルドの違いと選び方
Pry/Byebugで強力デバッグ環境を構築:ブレークポイントとステップ実行
初期設定の自動化:.ruby-version/.ruby-gemset/.tool-versionsの活用術
依存関係の安全性チェック:bundler-auditで脆弱性を検出する
セットアップ失敗あるあると最終チェックリスト:これで環境構築は完璧!
ネイティブ拡張gem(Nokogiri等)のビルド失敗を解決する方法(xcode-select/MSYS2)
DB用ライブラリ(mysql2/pg)の導入手順:依存パッケージとトラブル対策
RVM入門:gemsetの作成からバージョン切替まで一気に解説
rbenv入門:複数バージョン管理・global/local・rehashの基本操作
WSL2でRubyを使う:Windowsとのファイル共有・性能チューニングのポイント
WindowsでRubyをインストール:RubyInstaller+MSYS2完全ガイド
OpenSSL関連エラーの直し方:証明書・ビルドオプション・brew対策まとめ
プロキシ・社内ネットワーク下でのgemインストール設定(sources/SSL対応)
VS Codeで快適Ruby開発:拡張機能・デバッグ設定・Lint/Format自動化
アンインストール&再インストール手順:不調時のクリーン復旧ガイド
DockerでRuby環境をつくる:軽量イメージ・Volume・Compose実例
Bundlerの導入と使い方:Gemfileの書き方・bundle installのコツ
macOSでRubyを入れる最短手順:Homebrew+rbenvで最新版を導入する
PATHと環境変数の正しい設定:Windows/Mac/Linuxでの通し方チェックリスト
asdfでRubyを管理:複数言語を一元管理するモダン環境構築
Ruby の文法・記法
入門
真偽とnilの評価ルール:nil/false以外は真—条件式の落とし穴を回避
メソッド呼び出しの省略記法:括弧省略・セミコロン・改行の扱い
正規表現 /.../ と %r{}:メタ文字・後方参照・$1〜 の活用法
Rubyの文法超入門:式と文・endの役割を図解でやさしく解説
文字列の基礎:'シングル'と"ダブル"の違い・式展開 #{ } の使い方
ヒアドキュメント完全ガイド:<<- と <<~ の違い・インデントを揃えるコツ
シンボル :symbol 入門:軽量・高速・イミュータブルの特性と活用
代入・多重代入・並行代入:a, b = 1, 2 を使いこなすテクニック
条件分岐 if/unless/三項演算子 ? : の書き方と読みやすさのコツ
case-when文の使い方:then・ガード条件・パターンマッチを徹底解説
命名規則と可読性:snake_case/CamelCase/SCREAMING_SNAKE の使い分け
リテラル総まとめ:数値・文字列・配列・ハッシュ・正規表現・範囲の基本
例外処理の構文基礎:begin/rescue/ensure の書き方(構文として理解)
メソッド定義 def...end:引数・デフォルト・キーワード・スプラット解説
ループ構文まとめ:while/until/for/times/each の実践パターン
予約語と組み込み定数一覧(保存版):使える/使えない識別子を総チェック
演算子の優先順位と結合規則:曖昧さ回避のための()活用術
安全ナビゲーション &. と自己代入 ||= / &&= を使ってNPEを防ぐ
ブロック記法 do...end と { } の選び方:引数・戻り値・可読性の指針
コメントの書き方:# と =begin/=end・RDoc のベストプラクティス
Ruby のデータ型と変数
入門
範囲(Range)を使いこなす:1..10 / 'a'..'z' とeachの実用パターン
時刻と日付:Time/Date/DateTimeの違い・タイムゾーンとフォーマット
ミュータブル/イミュータブルの考え方:破壊的メソッド! の注意点
定数の定義と再代入警告:不変データとfreezeで安全性を高める
配列(Array)の基本操作:追加・削除・検索・スライス・変換の定番レシピ
ハッシュ(Hash)の使い方:シンボル/文字列キー・デフォルト値・dig活用
文字列(String)の特徴:可変オブジェクト・エンコーディング・freezeの効果
動的型付けとは?型が変わる仕組みと安全に使うための実践ポイント
nil/true/falseの基礎:真偽値と三値ロジックを正しく扱う方法
Rubyのデータ型とオブジェクトモデル:すべてがObjectである仕組みを理解
集合(Set)で重複排除:require 'set' の基礎と活用シーン
Duck Typing入門:型ではなく振る舞いで設計するRubyらしい書き方
self・@・@@・$ の意味:可視性とスコープを正しくコントロール
数値型まとめ:Integer/Float/Rational/Complex/BigDecimalの使い分け
型判定とダックタイピング:is_a?/respond_to?/=== の賢い使い分け
変数と型のベストプラクティス:読みやすく安全なデータ設計指針
シンボル(Symbol)vs文字列:速度・メモリ・用途で徹底比較
RBSで型を付ける:typeprof/steepの導入と静的型チェックの基本
変換メソッド一覧:to_s・to_i・to_f・to_a・to_h を実例で解説
変数の種類とスコープ:ローカル・グローバル・インスタンス・クラス・定数の違い
Ruby の文字列操作
入門
正規表現入門:/pattern/・%r{}・メタ文字・キャプチャの基本
文字列の比較・ソート:casecmp・<=>・Collationを理解する
文字列の性能チューニング:freeze・<< 連結・+ の違いを検証
文字列⇔数値変換:to_i/to_f/Integer()/Float() の例外と注意点
正規表現の高度テク:名前付きキャプチャ・後方参照・先読み/後読み
joinと配列変換:文字列⇔配列の相互変換レシピ集
大文字・小文字変換:upcase/downcase/capitalize/swapcaseの使い方
国際化/I18n対応の文字列処理:日本語・半角/全角・正規化対策
複数行文字列とヒアドキュメント:<<- と <<~ の実践パターン
セキュアな文字列処理:SQL/HTMLエスケープ・sanitizeの基本
Rubyの文字列操作完全ガイド:作成・結合・分割・検索の基本
splitとscanの違いを徹底解説:ログ解析・テキスト抽出のコツ
String#lengthとbytesizeの違いは?文字数カウントの落とし穴【UTF-8対応】
置換のやり方:gsub/sub/トランスリテレーション(tr)の実用例
マッチ結果の使い方:$1〜$9・Regexp.last_matchで値を取り出す
エンコーディング完全理解:Encoding・force_encoding・encodeの基本
空白・改行・トリム処理:strip/lstrip/rstrip/chompの違い
文字列フォーマットまとめ:式展開・format・Kernel#sprintfの使い分け
文字列の部分取得とスライス:[]・slice・slice! を使いこなす
Unicodeと絵文字の扱い:マルチバイト文字を安全に処理する方法
Ruby の数値と演算子
入門
乱数の作り方:rand・Randomクラス・シードの設定方法
範囲オブジェクトと数列:1..10・step・upto/downto の使い方
NaN・Infinityの扱い:Float::NAN/INFINITY と安全な比較
時間と数値:秒・分・時の換算と経過時間の計算テクニック
パフォーマンス豆知識:整数の内部表現・Fixnum/Bignumの歴史
入力検証と数値チェック:numeric? の実装・Integer() 例外処理
統計の基本をRubyで:平均・中央値・標準偏差の計算方法
金額・消費税計算のベストプラクティス:端数処理と銀行丸め
数値⇔文字列変換:to_s・to_i・format(%記法)を使い分ける
数値計算のアンチパターン:0除算・丸め誤差・桁あふれ対策
丸め処理の正解:round/floor/ceil/truncate と桁指定のコツ
数値型まとめ:Integer/Float/BigDecimal の違いと使い分け【保存版】
Mathモジュール活用:sqrt・sin・PI・log の便利関数まとめ
四則演算の基本と優先順位:()・**・/・% を正しく理解
べき乗・剰余・商と余り:**・%・divmod の実用サンプル
浮動小数点の誤差対策:BigDecimalで金額計算を安全に行う
比較演算子の使い分け:==・===・<=>・eql? の違いを徹底解説
論理演算の基本:&&・||・! と短絡評価(ショートサーキット)
代入演算子まとめ:+=・-=・*=・/=・**= の挙動を理解する
ビット演算入門:&・|・^・~・<<・>> の基礎と実例
Ruby の配列(Array)
入門
Array入門:作成・参照・更新をゼロから解説【初心者向け】
要素の追加・削除:push/pop/shift/unshift/insert/delete の基本
検索と取得:index・rindex・include?・find・bsearch の使い方
並び替え完全ガイド:sort/sort_by/reverse_each のコツと注意点
重複を消す・ユニーク化:uniq/uniq!/to_set の活用パターン
連結と分割:+・concat・|・&・partition・each_slice の実例
スライスと部分配列:[]・slice・values_at で柔軟に取り出す
変換と加工:map/collect・flat_map・compact/compact! の使い方
抽出と条件処理:select/reject/grep/filter・take/drop の定番
走査の鉄板:each・each_with_index・with_index を使い分ける
集計処理:sum・inject/reduce・group_by・tally の便利ワザ
ネスト配列の扱い:多次元配列のアクセス・flatten/transpose
配列↔ハッシュ変換:to_h・zip・assoc/rassoc の活用術
破壊的/非破壊的メソッドの違いと!の注意点【安全に使う】
パフォーマンス最適化:容量確保・frozen配列・ベンチマーク
ランダム化・シャッフル:shuffle・sample・permutation/combination
複合キーでの並び替え:sort_byで安定ソートを実現する
配列の比較・差分:==・<=>・-(差集合)・&(積集合)
可変長引数とスプラット:*args で柔軟なAPI設計をする
実務レシピ集:ログ解析・CSV行処理・APIレスポンス整形
Ruby のハッシュ(Hash)
入門
Hash入門:キーと値の基本・作成・更新・削除をわかりやすく解説
シンボルキーと文字列キー:メモリ・速度・可読性で徹底比較
値の取得とデフォルト値:[]・fetch・default_proc の使い分け
走査と反復処理:each・each_key・each_value・each_pair の基本
ネストHashの操作:dig・transform_keys/transform_values の実例
マージと上書き戦略:merge/merge! と深いマージ(deep_merge)の設計
キーの追加・削除・変更:store・delete・compact/compact! の活用
並び替えと抽出:sort_by・select/reject・slice/except のテクニック
初期化の正しい書き方:Hash.new vs {} とミュータブル既定値の罠
逆引きと入れ替え:invert と値の重複問題の対処法
まとめて更新:update・**(キーワード展開)・構造的代入のコツ
集計とグルーピング:group_by・tally・count で頻度表を作る
変換とシリアライズ:to_a/to_h・JSON/CSV との連携方法
セット演算と比較:keys/values の & | - で差分を抽出する
ハッシュの安全設計:freezeで不変化・キーのハッシュ化の基礎
パフォーマンス最適化:ハッシュテーブル再ハッシュ・容量設計
パターンマッチとHash:case in・キーワード引数との連携
設定ファイルの扱い:YAML/JSONをHashで読み書きする
シンボル化/文字列化の戦略:deep_symbolize_keys の考え方
実務レシピ集:APIパラメータ組み立て・環境設定・キャッシュ実装
Ruby のシンボル・範囲・集合
入門
RubyのSymbolとは?文字列との違い・メリット・使い分けを徹底解説
シンボルの作り方と基本操作::name・:"with space"・to_sym/to_s の基礎
文字列vsシンボルの性能比較:メモリ・速度・GCの観点で検証【保存版】
キーはSymbolが正解?ハッシュ設計で迷わない実践ルール
動的にシンボルを生成しても安全?symbol GCとメモリリーク対策
範囲オブジェクトRange入門:1..10 と 1...10 の違い・各種メソッド解説
数値・文字・日付のRangeを使いこなす:step/cover?/include? の正しい理解
case文とRangeの相性が抜群!得点判定・料金帯判定の実例レシピ
Rangeでイテレーション:each・to_a・bsearch で高速検索を実現
Set入門:重複排除・集合演算(和・積・差)を直感的に扱う
Setの基本操作:add/delete/merge/subset?・superset? の使い方
配列→Set→配列でユニーク化:ユースケース別ベストプラクティス
SetとHashの違いを理解する:内部構造・用途・性能の観点で比較
大規模データで効く!Setによる重複排除と会員リスト照合の実例
範囲×Setの応用:在庫ID帯域の管理・ブラックリスト照合テクニック
文字列正規化とSymbol化:deep_symbolize_keys の考え方と注意点
Range#cover? と include? の違い:境界判定・性能で賢く使い分け
日付Range活用術:Date.today..Date.today+7 で期間検索をシンプルに
国際化とシンボルキー:I18n辞書・設定ファイル設計のアンチパターン
実務レシピ20選:タグ管理・権限集合・価格帯・学年区分をスマートに実装
RubyのEnumerable
入門
Enumerable完全ガイド:map/select/reject/find を使い分ける【保存版】
each と each_with_index の違い:インデックス付き走査の基本パターン
each と each_with_index の違い:インデックス付き走査の基本パターン
map と collect は同じ?戻り値の扱いと可読性の観点で解説
select/reject/filter の使いどころ:条件抽出の鉄板レシピ
find/detect/find_index:最初の1件を素早く探す最適解
reduce/inject 入門:合計・連結・ハッシュ集計の実例で理解
group_by と tally で集計:カテゴリ別件数・頻度表の作り方
sort と sort_by の性能比較:多条件ソート・安定ソートのコツ
take/drop/take_while/drop_while:先頭・条件で切り出すテクニック
Rails
Rails の基本・概要
入門
Railsコンソール活用術:rails console でデバッグ・検証を爆速にする方法
Railsコマンド早見表:rails new / g / s / db:migrate / routes【保存版】
Scaffoldは使うべき?メリット・デメリット・安全な使い方と代替案
アセットの全体像:importmap・jsbundling・cssbundling の選び方
設定ファイルの全体観:application.rb・credentials・environmentsを概観
環境の違い:development/test/production の挙動と使い分けガイド
自動読み込み(Zeitwerk)とは?命名規約とフォルダ設計の基本
Railsのセキュリティ基本:CSRF・Strong Parameters・XSSの考え方
Active Record概要:ORMの思想とRails流データ操作の基礎
マイグレーション入門:スキーマ進化とロールバックの考え方
国際化の基本:i18n・タイムゾーン・ロケール設定の初歩
よくあるエラーと対処:Routing Error / Pending Migration など早見表
学習ロードマップ:基礎→CRUD→テスト→デプロイまで最短で進む方法
Railsとは何か?MVCと「設定より規約」を初心者向けに図解で解説
Railsでできること一覧:Webアプリ・API・管理画面・ジョブの実例
MVCの役割と流れ:リクエストからレスポンスまでのライフサイクル完全ガイド
Railsが選ばれる理由:生産性・コミュニティ・長期運用の強みを検証
Rails用語集:コントローラ・ルーティング・ヘルパ・Concern など基礎辞典
他フレームワーク比較:Rails vs Django/Laravel/Express の違いと選び方
RESTとRails:resources設計と7つの標準アクションを理解する
開発環境とインストール
入門
Rails開発環境の全体像:Ruby・Bundler・DB・JS/CSSツールの役割を整理
macOSでRailsを始める:Homebrew + rbenv + PostgreSQL インストール手順
Windows/WSLでRails環境構築:Ubuntu + rbenv + SQLite の最短セットアップ
Linux(Ubuntu)向け:Ruby・Node・DBのインストールコマンド集【保存版】
asdfで複数言語を一元管理:Ruby/Node/psql をまとめてセットアップ
Bundler導入:Gemfileの書き方・group・バージョン指定のコツ
データベース準備:SQLite/MySQL/PostgreSQL の選び方と初期設定
Node不要?importmap最小構成とjsbundling構成の比較と判断基準
VS Code最適化:拡張機能・Rubocop・Formatter・デバッグ設定
OpenSSL/ffi/nokogiri などビルド系エラーの原因と解決手順
Git初期設定:.gitignore・コミット規約・ブランチ運用の基本
DockerでRails開発:docker-composeでDB/Redis付き環境を一撃構築
環境変数と秘密情報:dotenv と Rails credentials の使い分けベストプラクティス
日本語と時刻設定:locale/zone を既定値にする初期設定チートシート
Yarn/NPMの導入と使い分け:フロント依存の管理方針
画像処理の下準備:ImageMagick/Vips と Active Storageに備える
メール送信の準備:SMTPテスト用Mailhog/Letter Openerの導入
テスト環境の土台作り:RSpec・FactoryBot・Capybaraの初期設定
パフォーマンス計測の下地:Bullet・rack-mini-profiler の導入手順
初期セットアップ最終チェック:rails new直後にやること20項目
プロジェクト作成と構成
入門
ログ設定とタグ:lograge・Request ID・構造化ログの基本
初期化処理:initializerで拡張・中間ウェア設定を管理する方法
ジェネレータのカスタム:.railsrc と config/application.rb で既定を上書き
rails new 完全ガイド:テンプレート・フラグ・--skip 系オプションの使い分け
APIモードで始める:rails new --api と通常モードの違いと選び方
フロントの選択肢:importmap / jsbundling / cssbundling の構成比較
ディレクトリ構造を理解:app/ config/ db/ lib/ bin/ 主要フォルダ解説
app配下の役割:models/controllers/views/helpers/jobs/mailers/channels を把握
configの読み解き:application.rb・environments・initializersの読み順
DB初期化の流れ:rails db:create db:migrate db:seed の基本と落とし穴
認証/認可の骨組み:Devise/Pundit を見越した構成ルール
サービス/フォーム/クエリオブジェクト:app/services 等の配置ベストプラクティス
ルーティング初期設定:root・resources・/healthz の置き方と考え方
マルチ環境設定:credentials:edit・dotenv・ENV の安全な使い分け
開発サーバ起動:rails s・bin/dev・foreman で並行起動を整える
Zeitwerk命名規約:フォルダとクラス名の一致でオートロードを安定化
アセットとビルド:esbuild/Vite/webpacker からの移行指針(概念編)
本番設定の雛形:production.rb の最低限チェック項目
マルチDB/レプリカ対応:database.yml の基本パターンと注意点
社内標準テンプレ作成:プロジェクト雛形をテンプレート化する手順
ルーティング入門
入門
ルーティングのテスト:routing spec と path helper を検証する方法
よくあるエラー対処:No route matches・uninitialized route helpers
resources の基礎:7アクションとRESTful設計を理解
shallow: true でURL短縮:ネスト解消と可読性アップのコツ
constraints活用:サブドメイン・ロール・フォーマット制約の書き方
ルーティングヘルパ活用:*_path/*_url の引数とオプション早見表
エンジンのマウント:Sidekiq/ActiveStorage/ActionMailbox のルーティング
resource vs resources:単数・複数の違いと使い分け実例
名前空間とスコープ:namespace・scope module/path の違いを整理
redirect と match:リダイレクト・ワイルドカードの安全な使い方
Railsルーティング超入門:routes.rbの基本と読み方【保存版】
ルートの優先順位と衝突回避:上から評価・catch-allの注意点
APIルーティング設計:versioning・namespaces・JSON Only の定石
多言語URLの設計:localeスコープ・スラッグ・人間可読URLの作り方
セキュリティ視点のルーティング:公開範囲・HTTPメソッド強制・CSRF
ブログ/EC/予約/管理画面など典型アプリのルート設計パターン
ネストルート入門:親子関係・深すぎるネストを避ける設計指針
member / collection:カスタムアクションの正しい追加方法
ルートパラメータ検証:正規表現・format・constraintsで安全設計
defaults の使い方:locale・format・ページング初期値を設定する
コントローラ基礎
入門
Paginationとソート:kaminari/pagyで一覧のUXとパフォーマンスを両立
before_action完全ガイド:only/except/skip_before_actionの使い分け
respond_toとフォーマット別処理:HTML/JSON/XML/Turbo Streamの実装
CSRF対策の仕組み:protect_from_forgeryとAPIモードの扱い
認証フィルタの実装:before_action :authenticate_user! の応用
renderとredirect_toの違い:テンプレート/JSON/外部URLの返し方まとめ
パラメータ完全攻略:ネスト・配列・ハッシュのpermit書き方パターン
rescue_fromで例外ハンドリング:404/422/500のJSONレスポンス設計
コントローラの肥大化を防ぐ:サービスオブジェクト/フォームオブジェクト分離
Strong Parametersアンチパターン:permit!の危険と安全な代替
非同期リクエスト対応:Turbo/ fetch API とコントローラ設計の要点
JSON APIのベストプラクティス:ステータスコード・シリアライズ・エラー形式
検索・フィルタの設計:クエリオブジェクト/Paramsオブジェクト導入法
セキュリティ強化:ヘッダー設定・リファラ検証・リダイレクトオープンリダイ対策
よくあるエラー解決集:AbstractController::ActionNotFound/InvalidAuthenticityToken
Namespaced ControllerとAdmin構成:ルート・認可・レイアウトの分離
フラッシュメッセージの設計:flash/flash.nowの違いとUIに反映する方法
Strong Parametersの書き方:require/permitで安全に受け取る【保存版】
Railsコントローラ入門:アクション・リクエストライフサイクルを理解
セッションとクッキーの使い方:サインイン状態・期限・セキュリティ設定
ビューとテンプレート
入門
レイアウトの作り方:application.html.erb・yield・content_for徹底解説
レイアウトの作り方:application.html.erb・yield・content_for徹底解説
パーシャル活用術:render partial/collection・localsで再利用性アップ
ビューヘルパー厳選:link_to/image_tag/number_to_currency 使い方集
フォームの基本:form_with/modelオプション・バリデーション表示まで
エスケープと安全性:sanitize/raw/html_safe の正しい使い分け
I18nと日付/数値フォーマット:t/l/number_to_delimited の実践
条件分岐とループ:ビューでのif/eachの可読性とヘルパー抽出
アイコン/画像管理:asset_path/image_pack_tagとSVGインライン化
フラッシュメッセージUI:Bootstrap/Tailwindでの実装テンプレート
Turbo/Stimulusと連携:フォーム送信・モーダル・部分更新の基本
レスポンシブデザイン:Tailwind/Bootstrapの導入とレイアウト設計
SEO/メタタグ設定:title/description/OGPをview_componentで管理
パフォーマンス最適化:フラグメントキャッシュ・コレクションキャッシュ
JSONとJbuilder/Builder:APIレスポンスをテンプレートで整形
ViewComponent入門:コンポーネント駆動で複雑UIを整理
Railsビュー入門:ERBの基本構文と<%= %> / <% %>の違いを理解
アクセシビリティ基本:ARIA属性・ラベル・コントラストのベストプラクティス
エラーハンドリングUI:404/422/500カスタムページを作る
よくある表示崩れの原因と対処:レイアウト継承・CSS衝突・キャッシュ
HamlとSlimの選び方:導入手順・記法比較・変換ツールまとめ
モデルとActive Record基礎
入門
Active Record入門:モデル作成・CRUD・スキーマの基本を一気に理解
バリデーションの使い方:presence/uniqueness/format/length 早見表
コールバック最適化:before_validation/save/commit の正しい使い所
スコープとクエリチェーン:where/order/limit/merge を使いこなす
アソシエーション基礎:belongs_to/has_many/has_one の定義と外部キー
多対多とthrough/has_many :through:中間テーブル設計パターン
enumの活用:状態管理・i18nラベル・バリデーションの連携
デフォルト値とNULL設計:NOT NULL/デフォルト/DB制約の考え方
トランザクション入門:transaction・with_lock で整合性を守る
依存関係の削除:dependent: :destroy/:nullify と外部キーの整合
シリアライズ属性:serialize/jsonb/store_accessor の使い分け
STIとポリモーフィック関連:選び方・落とし穴・代替設計
N+1を避ける:includes/eager_load/preload とBulletの使い方
クエリログの読み方:EXPLAIN/joins/includesの違いを理解
ID戦略:AUTO INCREMENT/UUID/ULID の比較と導入手順
バッチ処理とfind_in_batches:大規模データを安全に処理
業務ロジックの置き場所:モデル肥大化を防ぐ設計(Service/Query Object)
マイグレーションとスキーマ設計
入門
マイグレーション入門:rails g migration から db:migrate まで基本手順
change/up/down/reversible:安全なスキーマ変更の書き方【保存版】
カラム型の選び方:string/text/integer/bigint/decimal/boolean/uuid徹底比較
インデックス設計の極意:単一・複合・部分・UNIQUE・順序付けの使い分け
外部キー制約の追加:add_foreign_key と整合性エラーの対処法
references/belongs_to:外部キー・インデックス同時作成のベストプラクティス
既存データ対応:NOT NULL追加時のbackfill・デフォルト設定の安全手順
零ダウンタイム移行:rename/add_column/add_index の安全な順序
大規模テーブルの変更:CONCURRENTLY・オンラインインデックス作成
ENUM/チェック制約:PostgreSQLのCHECK/enumとRailsの書き方
生成列・計算列:PostgreSQLのgenerated columnで集計を高速化
文字コードと照合順序:UTF-8・日本語検索・LIKE最適化の基礎
バリデーションとコールバック
入門
Railsバリデーション入門:presence/uniqueness/length の基本と使い分け【保存版】
uniquenessの正解:スコープ・case_sensitive・DBユニークインデックスの併用
numericality徹底解説:整数限定・範囲・allow_nil の実用パターン
format(正規表現)で入力チェック:メール/電話/郵便番号の典型レシピ
Railsアソシエーション
入門
アソシエーション超入門:belongs_to/has_many/has_one の基礎と設計指針
belongs_to の必須化:optional: true/false と NOT NULL/外部キーの整合
has_many :through と HABTM の違い:中間テーブルに属性を持たせる設計
多対多の実装レシピ:タグ付け・お気に入り・ロール割り当ての定番
Railsのクエリ最適化
入門
N+1問題とは?ログの見方と再現例から学ぶ根本原因【保存版】
includes/preload/eager_load の違い:内部でどんなSQLが走るかを可視化
Bullet導入で検知自動化:設定・通知・false positive の抑制テク
select/pluck 使い分け:必要カラムだけ取得して転送量を削減
Railsフォームと入力処理
入門
form_with超入門:model/URL指定・scope・local: true の基本を理解
Strong Parameters再入門:ネスト・配列・permit のレシピ集【実例多数】
バリデーション表示:errors.full_messages・field_with_errors の整え方
セレクト/チェックボックス/ラジオ:collection_* ヘルパの実践
Rails認証
入門
Devise導入ガイド:Rails 7/8対応のインストール〜初期設定手順【保存版】
ログイン/ログアウト/新規登録を最速実装:Devise基本機能の使い方
メール確認(confirmable)の実装手順:有効化リンクと期限設定のコツ
パスワード再発行(recoverable):メールテンプレ/トークン失効まで徹底解説
Rails認可設計と権限制御
入門
Pundit導入と基本:policy作成・authorize/verify_authorizedの使い方
Pundit::Scopeで一覧を絞り込む:ロール/所有者別のアクセス制御
Punditの設計ベストプラクティス:単純ルール化と責務分離のコツ
CanCanCan入門:ability.rbの定義・load_and_authorize_resource実例
RailsのActive Storage
入門
Active Storage導入:インストール/マイグレーション/初期設定の手順
ストレージ選定:Disk/S3/GCSの違いと本番設定(credentials/ENV)
has_one_attached/has_many_attachedの使い分けと設計指針
フォームで画像をアップロード:form_with・direct_uploadの基本
メール送信とAction Mailer(テンプレート・配信・キュー)
入門
Action Mailer入門:メイラー作成・テンプレート・レイアウトの基本
本番SMTP設定ガイド:Gmail/SendGrid/SESの設定とTLS確認手順
メールプレビューと開発確認:letter_opener/mailhogの使い方
HTML+テキスト(multipart/alternative)メールの作り方とテスト
バックグラウンド処理とActive Job(Sidekiq・GoodJob・リトライ)
入門
Active Job入門:ジョブの作り方・enqueue/performの基本【Rails 7/8対応】
Sidekiq導入ガイド:Redis設定・queues設定・Web UIの使い方
データベース
SQL 基本文法と概要
入門
SQLとは?初心者向けにできること・役割・使われる理由をやさしく解説
SQLの基本文法を完全解説!SELECT文の書き方と仕組みを初心者向けに整理
SQLでデータベースを操作する流れとは?テーブル・行・列の関係を図解で理解
SQLが多くのシステムで使われ続ける理由とは?汎用性と標準化の強みを解説
SQLのCRUD操作とは?SELECT・INSERT・UPDATE・DELETEをやさしく説明
SQLとデータベースの関係を初心者向けに解説!RDBの基本構造を理解しよう
SQL クエリとデータ取得
入門
SQLのWHERE句とは?条件指定の基本を初心者向けにやさしく解説
SQLのORDER BYとは?並び替えの仕組みと使い方を整理
SQLのLIMITとOFFSETの使い方を初心者向けにわかりやすく説明
SQLのJOINとは?テーブルを結合する仕組みを図解で理解
INNER JOINとLEFT JOINの違いを初心者向けに徹底解説
SQLで複数テーブルを扱うときの考え方をやさしく解説
SQL 設計とデータモデリング
入門
データベース設計とは?SQLを書く前に知っておきたい基本概念を解説
テーブル設計の基本とは?初心者向けに考え方をやさしく説明
正規化とは何か?データの重複を防ぐ設計手法を初心者向けに解説
第1正規形・第2正規形・第3正規形をやさしく整理
非正規化とは?パフォーマンスとの関係を初心者向けに説明
主キーとは?役割と正しい設計方法をわかりやすく解説
SQL トランザクションと同時実行
入門
トランザクションとは?SQLで安全にデータを扱うための基本概念を解説
ACID特性とは何か?トランザクションの信頼性を初心者向けに説明
COMMITとROLLBACKの違いとは?SQLトランザクションの基本操作を解説
自動コミットとは?SQL実行時の注意点を初心者向けに整理
トランザクションを使うべき場面とは?実務での判断基準を解説
同時実行制御とは何か?複数処理が同時に動く仕組みをやさしく説明
SQL パフォーマンスと最適化
入門
SQLの処理が遅くなる原因とは?初心者向けに基本から解説
SQLパフォーマンス改善の考え方をやさしく整理
インデックスとは何か?SQL高速化の仕組みを初心者向けに説明
インデックスが効く場合・効かない場合を具体例で解説
複合インデックスとは?設計時の注意点を初心者向けに整理
WHERE句とインデックスの関係をわかりやすく解説
PostgreSQL 基礎と特徴
入門
PostgreSQLとは?特徴・強み・できることを初心者向けにやさしく解説
PostgreSQLが選ばれる理由とは?他のデータベースとの違いを整理
PostgreSQLのアーキテクチャとは?内部構造を初心者向けに説明
PostgreSQLのデータ型の特徴をわかりやすく解説
PostgreSQLでテーブルを作成する基本手順を初心者向けに整理
PostgreSQLのNULLの扱い方と注意点を解説
PostgreSQL の SQL とクエリ実践
入門
PostgreSQLのSELECT文の基本を初心者向けにやさしく解説
PostgreSQLでWHERE句を使う方法と注意点を整理
PostgreSQLのJOINの特徴とは?他DBとの違いを解説
PostgreSQLのGROUP BYと集計処理を初心者向けに説明
PostgreSQLのHAVING句の使い方と注意点を解説
PostgreSQLのサブクエリの基本をわかりやすく説明
JSONB・CTE・ウィンドウ関数
入門
PostgreSQLのJSONBとは?特徴と使いどころを初心者向けに解説
PostgreSQLでJSONとJSONBはどう違う?選び方をわかりやすく整理
PostgreSQLの配列型(Array)とは?基本構造と使い方を解説
PostgreSQLのウィンドウ関数とは?OVER句の仕組みを初心者向けに説明
PostgreSQLで順位付けを行う方法とは?ROW_NUMBERの基本を解説
PostgreSQLのCTE(WITH)とは?複雑なSQLを整理する書き方を紹介
PostgreSQLパフォーマンス
入門
PostgreSQLの処理が遅くなる原因とは?初心者向けに基本から解説
PostgreSQLの実行計画(EXPLAIN ANALYZE)の読み方を解説
PostgreSQLのインデックス種類とは?B-tree・GIN・GiSTを整理
PostgreSQLでインデックスが効かない原因と対策
PostgreSQLの複合インデックス設計の考え方を解説
PostgreSQLのVACUUMとは?役割と仕組みを初心者向けに説明
MySQL 基礎と特徴
入門
MySQLとは?特徴・用途・できることを初心者向けにやさしく解説
MySQLが広く使われている理由とは?メリットを整理
MySQLとPostgreSQLの違いを初心者向けに比較解説
MySQLのアーキテクチャとは?基本構造をわかりやすく説明
その他
サイト情報
サイトマップ
運営者情報
免責事項
プライバシーポリシー
お問い合わせ
イベントTOP
イベント・講座情報
職業訓練講師が直伝!商用システムを支える「DB設計・モデリング」とSQLパフォーマンス改善の正解。
職業訓練講師が最短攻略!Ruby on Railsによる「商用API開発」とDB最適化の極意。
職業訓練講師が直伝!Ruby技術者認定試験(Gold)最短合格と「メタプログラミング」の極意。
更新日時:2026年03月02日 12:29