WINGS(Www INtegrated Guide on Server-architecture)
Www INtegrated Guide on Server-architecture :
   ホーム お問い合わせ サーバーサイド環境構築設定 つぶやき ブックマーク レンタルサーバー 総合FAQ/訂正&ダウンロード このエントリーをはてなブックマークに追加        
  • 刊行書籍情報  [書籍マップ
  • オンライン公開 技術記事
  • シリーズ別書籍リスト
  • 「WINGS News」登録/解除
  • WINGSプロジェクト紹介
  • WINGSプロジェクトメンバ募集





【カテゴリ】 Ruby


Ruby on Rails 7ポケットリファレンス  

Ruby on Rails 7ポケットリファレンス

WINGSプロジェクト 山内直/著
山田祥寛/監修
株式会社 技術評論社/発行
定価 3,520円
四六版・ 624ページ・ 2色
ISBN 978-4-297-13062-6
発刊日: 2022年10月20日

[Amazon.co.jpからオンライン購入する]

   FAQ 本書訂正 アンケート ダウンロード

本書の特徴

Ruby on Railsを使いこなすリファレンス

人気のポケットリファレンスにRails7が新登場。
逆引きで知りたい情報をすぐに探せて、豊富な用例から具体的な実装のイメージがつかめます。Action Mailbox/Action Text/Action Cable/Active Storage/Active Jobなど重要コンポーネントを新規書き下ろしで大幅に増強。開発者必携の1冊です。

まとめて読んで 更にスキルアップのこんな書籍

・Rubyを基礎から学ぶなら
独習Ruby 新版」(翔泳社)
・Railsの基本を素早く学びたいなら
たった1日で基本が身に付く!Ruby on Rails 超入門」(技術評論社)
分野・レベル別マップ

本書について取り上げていただいたブログさま

・note - にわけんさま
【本の紹介】Ruby on Rails7ポケットリファレンス(2022年11月26日)
・DESKPLATE ブログ - deskplateさま
Ruby on Rails 7ポケットリファレンス(2022年11月26日)

  Contents


Chapter 1 Ruby on Railsの基本
 Ruby on Railsとは?
 Railsを利用するための環境設定
基本コマンド
 Railsアプリケーションを新規作成する―rails newコマンド
 必要なgemファイルを管理する―gemメソッド
 必要なgemをインストールする―bundle installコマンド
 HTTPサーバを起動する―rails serverコマンド
 モデル/テンプレート/コントローラをまとめて作成する
  ―rails generate scaffoldコマンド
 自動生成されたファイルを削除する―rails destroyコマンド
 Rails環境で動作するバッチファイルを作成する―rails runnerコマンド
アプリケーション設定
 アプリケーションの設定情報を定義する―configメソッド
 アプリケーション変数を定義する―configメソッド
その他のコマンド
 Railsで利用できるRakeタスクを確認する―rails -Tコマンド
 利用しているライブラリのバージョンを確認する―rails aboutコマンド
 開発中の懸案事項をメモする―rails notesコマンド
 Railsアプリケーションをバージョンアップする―rails app:updateコマンド
 一時ファイル領域を作成・消去する―rails tmp:xxxxコマンド
 アプリケーションにテンプレートを適用する―rails app:templateコマンド
 オリジナルのRakeタスクを作成する―taskメソッド

Chapter 2 コントローラ開発
 概要
コントローラの基本
 コントローラクラスを作成する―rails generate controllerコマンド
 アクションメソッドを記述する―アクションメソッド
 コントローラ/アクション名を取得する
  ―controller_xxxxx/action_nameメソッド
リクエスト情報
 ポストデータ/クエリ情報/ルートパラメータを取得する―paramsメソッド
 リクエストヘッダ/サーバ環境変数を取得する―headersメソッド
レスポンス情報
 テンプレートファイルを呼び出す―renderメソッド
 文字列を出力する―renderメソッド(:plain)
 HTMLを出力する―renderメソッド(:html)
 アクションにインラインのテンプレートを記述する―renderメソッド(:inline)
 テンプレートに適用するレイアウトを変更する
  ―render(:layout)/layoutメソッド
 XML形式のレスポンスを生成する―renderメソッド(:xml)
 JSON形式のレスポンスを生成する―render(:json)メソッド
 XML形式のデータをJSON形式に変換する―from_xmlメソッド
 空のコンテンツを出力する―headメソッド
 テンプレートでの処理結果を文字列として取得する―render_to_stringメソッド
 他のページにリダイレクトする―redirect_to/redirect_backメソッド
 指定されたファイルを出力する―send_fileメソッド
 クライアントにバイナリデータを送信する―send_dataメソッド
 拡張子に応じて応答フォーマットを切り替える―respond_toメソッド
 respond_toメソッドで利用できる拡張子を定義する―registerメソッド
 応答ヘッダを取得/設定する―headersメソッド
 Cache-Controlヘッダを操作する―expires_in/expires_nowメソッド
 BuilderテンプレートでXML文書を生成する―xmlオブジェクト
 Atomフィードを生成する―atom_feedメソッド
状態管理
 クッキーを取得/設定する―cookiesメソッド
 クッキーを削除する―deleteメソッド
 永続化クッキー/署名付きクッキーを発行する―permanent/signedメソッド
 セッション情報を読み書きする―sessionメソッド
 セッションを破棄する―reset_session/sessionメソッド
 セッションの設定を変更する―session_store/sessionパラメータ
 セッション格納のデータベースを準備する
  ―rails generate active_record:session_migration/
  rails db:sessions:trimコマンド
 リダイレクト前後で一時的にデータを維持する(1)
  ―redirect_toメソッド(:alert/:notice/:flash)
 リダイレクト前後で一時的にデータを維持する(2)―flashメソッド
 現在のアクションでのみ有効なフラッシュを定義する―nowメソッド
 フラッシュを次のリクエストに持ち越す―keepメソッド
 フラッシュを破棄する―discardメソッド
ログ管理
 標準ログを出力する―unknown/fatal/error/warn/info/debugメソッド
 ログの出力を重要度に応じて絞り込む―log_levelパラメータ
 ログファイルをクリアする―rails log:clearコマンド
 特定の情報をログから除外する―filter_parameters/filter_redirectパラメータ
フィルタ
 アクションの直前/直後に処理を実行する
  ―before_action/after_actionメソッド
 アクションの前後で処理を実行する―around_actionメソッド
 フィルタを簡単に定義する
  ―before_action/around_action/after_actionメソッド
 複数のコントローラでフィルタを共有する―before/after/aroundメソッド
 親コントローラから継承したフィルタを除外する―skip_xxxxx_actionメソッド
 フィルタの実行順序を変更する―prepend_xxxxx_actionメソッド
 基本認証を実装する―authenticate_or_request_with_http_basicメソッド
 基本認証を簡単に実装する―http_basic_authenticate_withメソッド
 ダイジェスト認証を実装する
  ―authenticate_or_request_with_http_digestメソッド
Applicationコントローラ
 すべてのコントローラ共通の処理を定義する―ApplicationControllerクラス
 クロスサイトリクエストフォージェリ対策を行う
  ―protect_from_forgery/csrf_meta_tagsメソッド
 アプリケーション共通の例外処理をまとめる―rescue_fromメソッド
 コントローラクラスでビューヘルパーを宣言する―helper_methodメソッド
 コントローラに対応するヘルパーモジュールだけを読み込む
  ―action_controller.include_all_helpersパラメータ/clear_helpersメソッド
 url_forメソッドに渡すデフォルトパラメータを設定する
  ―default_url_optionsメソッド
 SSL通信を制御する―force_sslパラメータ/ssl_optionsパラメータ

Chapter 3 モデル開発
 概要
モデルの基本
 データベースへの接続設定を定義する―database.yml
 データベースを作成/削除する
  ―rails db:create/rails db:create:all/rails db:drop/
   rails db:drop:allコマンド
 データベースクライアントを起動する―rails dbconsoleコマンド
 モデルクラスを自動生成する―rails generate modelコマンド
 モデルの動作をコンソールで対話的に確認する―rails consoleコマンド
マイグレーション
 マイグレーションとは?
 マイグレーションファイルでデータベースを操作する
  ―change/up/downメソッド
 マイグレーションファイルを実行する―rails db:migrateコマンド
 マイグレーションの状態/バージョンを確認する
  ―rails db:migrate:status/rails db:versionコマンド
 スキーマファイルでデータベースを作成する
  ―rails db:schema:load/rails db:resetコマンド
 現在のデータベースからスキーマファイルを生成する
  ―rails db:schema:dumpコマンド
 データベースに初期データを投入する
  ―rails db:seed/rails db:setupコマンド
 データベースにテストデータを投入する―rails db:fixtures:loadコマンド
 マイグレーションファイルを単体で作成する―rails generate migrationコマンド
 テーブルを作成する―create_tableメソッド
 テーブルに特殊な列を追加する―timestamps/references/belongs_toメソッド
 既存テーブルを破棄する―drop_tableメソッド
 マイグレーションファイルで任意のSQL命令を実行する―executeメソッド
 既存テーブルに列やインデックスを追加する―add_xxxxxメソッド
 既存の列定義/インデックスを削除する―remove_xxxxxメソッド
 既存の列定義を変更する―change_xxxxxメソッド
 既存列/インデックス/テーブルの名前を変更する―rename_xxxxxメソッド
 列/インデックスが存在するかを判定する―xxxxx_exists?メソッド
 テーブル定義を変更する―change_tableメソッド
データの取得
 テーブルからすべてのレコードを取得する―allメソッド
 主キー値でデータを検索する―findメソッド
 任意の列でデータを検索する―find_by_xxxxxメソッド
 データを検索し初期化するか作成する
  ―find_or_initialize_by/find_or_create_byメソッド
 テーブルの先頭/末尾のレコードを取得する―first/lastメソッド
データの取得(クエリメソッド)
 クエリメソッドとは?
 検索条件をハッシュで設定する―whereメソッド
 検索条件を文字列で設定する―whereメソッド
 データを昇順/降順に並べ替える―order/reorderメソッド
 m~n件のレコードだけを取得する―limit/offsetメソッド
 取得列を指定する―selectメソッド
 特定のキーでデータを集計する―groupメソッド
 集計結果をもとにデータを絞り込む―havingメソッド
 モデルに適用した条件式を除外する―exceptメソッド
その他の取得系メソッド
 特定条件に合致するレコードの件数や平均値、合計値などを求める―集計メソッド
 モデルオブジェクトをリロードする―reloadメソッド
 SQL命令を直接指定する―find_by_sqlメソッド
 データが1件でも存在するかを確認する―exists?メソッド
 レコードのフィールド値を取得する―attributesメソッド
 テーブルのすべての列名を取得する―attribute_namesメソッド
 よく利用する条件式/ソート式を準備する―scopeメソッド
 名前付きスコープをパラメータ化する―scopeメソッド
 デフォルトのスコープを定義する―default_scopeメソッド
 モデルに課せられた条件式やソート式を無効化する―unscopedメソッド
データの登録/更新/削除
 モデルオブジェクトを新規に作成する―newメソッド
 モデルオブジェクトをデータベースに保存する―save/save!メソッド
 モデルオブジェクトの作成から保存までを一気に行う
  ―create/create!メソッド
 特定のフィールドを更新する―update_attributeメソッド
 既存のモデルオブジェクトを変更する―attributes=/assign_attributesメソッド
 複数のモデルオブジェクトをまとめて更新する―updateメソッド
 複数のモデルオブジェクトを効率的に更新する―update_allメソッド
 既存のレコードを削除する―destroy/deleteメソッド
 既存のレコードをまとめて削除する―destroy_all/delete_allメソッド
 レコードの状態をチェックする
  ―new_record?/persisted?/changed?/destroyed?メソッド
 モデルオブジェクトへの変更を監視する
  ―changed/changed_attributes/changes/previous_changesメソッド
 指定列の値をインクリメント/デクリメントする
  ―increment/decrementメソッド
 指定列のtrue/false値を反転させる―toggleメソッド
 レコードのupdated_at/on列を指定時刻で更新する―touchメソッド
 トランザクション処理を実装する―transactionメソッド
 オプティミスティック同時実行制御を実装する―StaleObjectErrorクラス
 データベースの行ロック機能を利用する―lock/lock!メソッド
 データベースに対してSQL命令を直接発行する―connection/executeメソッド
 テーブルに存在しないプロパティをデータベースに保存する
  ―セッターメソッド
アソシエーション
 アソシエーションとは?
 参照元テーブルから被参照テーブルにアクセスする―belongs_toメソッド
 1:nの関連を宣言する―has_manyメソッド
 1:1の関連を宣言する―has_oneメソッド
 m:nの関連を宣言する(中間テーブル)
  ―has_and_belongs_to_manyメソッド
 より複雑なm:nの関連を宣言する―has_manyメソッド(:through)
 アソシエーションの挙動をカスタマイズする
  ―belongs_to/has_one/has_many/has_and_belongs_to_manyメソッド
 関連モデルの件数を親モデル側でキャッシュする
  ―belongs_toメソッド(:counter_cache)
 1つのモデルを複数の親モデルに関連付ける(ポリモーフィック関連)
  ―belongs_toメソッド(:polymorphic)/has_manyメソッド(:as)
 関連するモデルを取得する―association/collectionメソッド
 関連するモデルを割り当てる
  ―association=/collection=/collection_singular_ids=/
   collection<<メソッド
 関連するモデルを新規に作成する
  ―build_association/create_association/build/createメソッド
 関連するモデルを削除する―delete/clearメソッド
 関連するモデルのid値を取得する―collection_singular_idsメソッド
 関連するモデルの数を取得する―sizeメソッド
 関連するモデルが存在するかをチェックする―empty?/exists?メソッド
 関連するモデルと結合する―joinsメソッド
 関連するモデルをまとめて読み込む―includesメソッド
検証機能
 標準の検証機能を利用する―validatesメソッド
 入力要素が空の場合に検証をスキップする
  ―validatesメソッド(:allow_nil/:allow_blank)
 検証エラーメッセージをカスタマイズする
  ―validatesメソッド(:message)
 検証を新規登録/更新時に限定する―validatesメソッド(:on)
 特定の条件に合致した/しない場合にのみ検証を実施する
  ―validatesメソッド(:if/:unless)
 検証エラーメッセージを取得する―errorsメソッド
 エラー発生元の表示スタイルを変更する
  ―action_view.field_error_procパラメータ
 モデル固有の検証ルールを定義する―validateメソッド
 複数のプロパティに共通するモデル独自の検証ルールを定義する
  ―validates_eachメソッド
 汎用的な検証ルールを定義する―validate_eachメソッド
 検証パラメータにアクセスする―optionsメソッド
 データベースに関連付かないモデルを定義する
  ―ActiveModel::Conversion/ActiveModel::Validations/
   ActiveModel::Namingモジュール
コールバック
 モデルの新規登録/更新/削除時に処理を呼び出す
  ―before_xxxxx/after_xxxxxメソッド
 モデルオブジェクトの検索/生成時に処理を呼び出す
  ―after_find/after_initializeメソッド
 コールバックメソッドを簡単に宣言する
  ―before_xxxxx/after_xxxxxメソッド
 コールバックを複数のモデルで共有する―コールバッククラス

Chapter 4 ビュー開発
 概要
ERBの基本
 テンプレートにRubyスクリプトを埋め込む
  ―<%…%>/<%=…%>/<%==…%>
 テンプレート変数を引き渡す―@…
 テンプレートファイルでメモ情報を記録する―コメント構文
レイアウト
 レイアウトとは?
 アプリケーション共通のレイアウトを準備する―yieldメソッド
 レイアウトに複数のコンテンツ領域を埋め込む―content_forメソッド
 レイアウトを入れ子にする―content_for?メソッド
部分テンプレート
 部分テンプレートとは?
 部分テンプレートを呼び出す―renderメソッド
 部分テンプレートにモデルを簡単に引き渡す―renderメソッド(省略構文)
 配列に対して順に部分テンプレートを適用する
  ―renderメソッド(:collection)
 配列に対して順に部分テンプレートを適用する(簡易版)
  ―renderメソッド(省略構文)
 配列の内容を区切りテンプレート付きで出力する
  ―renderメソッド(:spacer_template)
ビューヘルパー(フォーム)
 汎用的なフォームを生成する―form_withメソッド
 モデルと連携したフォームを生成する―form_withメソッド
 入力要素を生成する―xxxxx_field/text_areaメソッド
 ラジオボタン/チェックボックスを生成する
  ―radio_button/check_boxメソッド
 コレクションからラジオボタン/チェックボックスを生成する
  ―collection_check_boxes/collection_radio_buttonsメソッド
 選択ボックス/リストボックスを生成する―selectメソッド
 オブジェクト配列から選択ボックスを生成する―collection_selectメソッド
 選択ボックスのオプションをグループ化する
  ―grouped_collection_selectメソッド
 日付/時刻入力用の選択ボックスを生成する―xxxxx_selectメソッド
 ラベルテキストを生成する―labelメソッド
 ボタン/サブミットボタンを生成する―submitメソッド
 サブフォームを定義する―fields_forメソッド
 入力項目をグループ化する―field_set_tagメソッド
 一覧形式の入力フォームを生成する―xxxxx_fieldメソッド(:index)
ビューヘルパー(リンク)
 ルート定義をもとにURLを生成する―url_forメソッド
 ハイパーリンクを生成する―link_toメソッド
 条件に合致した/しない場合のみリンクを生成する
  ―link_to_if/link_to_unlessメソッド
 リンク先が現在のページであればハイパーリンクを無効にする
  ―link_to_unless_currentメソッド
 メールアドレスへのリンクを生成する―mail_toメソッド
ビューヘルパー(外部リソース)
 イメージ画像を表示する―image_tagメソッド
 ブラウザ上で音声/動画を再生する―audio_tag/video_tagメソッド
 サイトのFaviconを設定する―favicon_link_tagメソッド
 ブラウザにフィードの存在を通知する―auto_discovery_link_tagメソッド
 外部リソースのパスを取得する―path_to_xxxxxメソッド
 外部リソースのパスを取得する―url_to_xxxxメソッド
ビューヘルパー(データ加工)
 改行文字を<p>/<br>タグで置き換える―simple_formatメソッド
 文字列を指定フォーマットで整形する―sprintfメソッド
 文字列を指定の桁数で切り捨てる―truncateメソッド
 文字列から指定された単語の前後を抜き出す―excerptメソッド
 キーワードをハイライト表示する―highlightメソッド
 テーブルやリストのスタイルをn行おきに変更する
  ―cycle/reset_cycleメソッド
 サイクルの現在値を取得する―current_cycleメソッド
 数値データを加工する―number_xxxxxメソッド
 日付/時刻データを加工する―strftimeメソッド
ビューヘルパー(出力/エスケープ)
 <%…%>の中で文字列を出力する―concatメソッド
 文字列をHTMLエスケープせずに出力する―rawメソッド
 URLエンコードを行う―url_encodeメソッド
 文字列から特定のタグ/属性を除去する―sanitizeメソッド
ビューヘルパー(国際化対応)
 国際化対応とは?
 辞書ファイルを作成する―辞書ファイル
 ビューヘルパー/エラーメッセージなどを日本語化する―辞書ファイル
 アプリケーションで使用するロケールを設定する
  ―i18n.default_localeパラメータ
 ロケール情報を動的に設定する―I18n.locale=メソッド
 辞書ファイルを参照する―tメソッド
 ロケール設定に応じて日付/時刻を整形する―lメソッド
ビューヘルパー(その他)&自作
 任意のタグを生成する―tagメソッド
 オブジェクトやハッシュなどのデータを可読形式に整形する―debugメソッド
 テンプレートの処理結果を変数にセットする―captureメソッド
 ビューヘルパーを自作する―ApplicationHelperモジュール
 任意の属性を受け取るビューヘルパーを定義する―merge!メソッド
 本体を持つビューヘルパーを定義する―block_given?メソッド

Chapter 5 ルーティング
 概要
基本コマンド
 現在のルート定義を確認する―rails routesコマンド
RESTfulインターフェイス
 RESTfulインターフェイスを定義する―resourcesメソッド
 単一リソースに対するルートを定義する―resourceメソッド
 階層関係にあるリソースをルート定義する―resources/resourceメソッド
 ルートパラメータに制約条件を付与する―:constraintsオプション
 ルートパラメータに複雑な制約条件を設定する―matches?メソッド
 RESTfulインターフェイスに自前のルートを追加する(1)
  ―collection/memberブロック
 RESTfulインターフェイスに自前のルートを追加する(2)―:onオプション
 RESTfulインターフェイスの標準アクションを無効にする
  ―:only/:exceptオプション
 new/editアクションに対応するURLを変更する―:path_namesオプション
 モジュール配下のコントローラをマッピングする(1)
  ―namespaceブロック
 モジュール配下のコントローラをマッピングする(2)
  ―scope(:module)ブロック
 URLに特定の接頭辞を付与する―scopeブロック
 マッピングすべきコントローラを変更する―:controllerオプション
 自動生成するUrlヘルパーの名前を変更する―:asオプション
非RESTfulインターフェイス
 リソースに関係ないルートを定義する―matchメソッド
 非RESTfulインターフェイスでルートパラメータに制約条件を付与する
  ―:constraintsオプション
 ルートパラメータのデフォルト値を設定する―:defaultsオプション
 ルート定義をリダイレクトする―redirectメソッド
 非RESTfulインターフェイスで自動生成するUrlヘルパーの名前を変更する
  ―asオプション
 トップページへのルートを定義する―rootメソッド
 カスタムURLヘルパーを定義する―directメソッド

Chapter 6 テスト
 概要
基本コマンド
 テストデータベースを作成する―rails db:test:xxxxxコマンド
 すべてのテストを実行する―rails test:allコマンド
 テストの順番を変更する―active_support.test_orderパラメータ
 Parallelテストを指定する―parallelizeメソッド
 Parallelテストの前処理と後処理を行う
  ―parallelize_setup/parallelize_teardownメソッド
Modelテスト
 Modelテストを作成する―rails generate test_unit:modelコマンド
 Modelテストを準備する―testメソッド
 Modelテストの結果をチェックする―assert_xxxxxメソッド
 無条件にテストメソッドを失敗させる―flunkメソッド
 フィクスチャの内容を参照する―フィクスチャの展開
 テストの準備と後始末を行う―setup/teardownメソッド
 Modelテストを実行する―rails testコマンド
Functionalテスト
 Functionalテストを作成する―rails generate test_unit:scaffoldコマンド
 Functionalテストを準備する―testメソッド
 Functionalテストでコントローラを起動する
  ―get/post/patch/put/delete/headメソッド
 Functionalテストの結果をチェックする―assert_xxxxxメソッド
 テンプレートによる出力結果をチェックする―assert_selectメソッド
 Functionalテストを実行する―rails testコマンド
Integrationテスト
 Integrationテストを準備する―rails generate integration_testコマンド
 Integrationテストでコントローラを起動する
  ―get/post/patch/put/delete/head/follow_redirect!メソッド
 Integrationテストを実行する―rails test:integrationコマンド
Systemテスト
 Systemテストを作成する―rails generate system_testコマンド
 Systemテストを準備する―visit/fill_in/check/click_onメソッド
 Systemテストを実行する―rails test:systemコマンド
 スクリーンショットを撮る
  ―take_screenshot/take_failed_screenshotメソッド

Chapter 7 コンポーネント
Action Mailer
 メール送信のための共通設定を定義する―action_mailer.xxxxxパラメータ
 メーラークラスを自動生成する―rails generate mailerコマンド
 メール送信のための処理を実装する―default/mailメソッド
 メールヘッダを設定する―headersメソッド
 メールテンプレートで利用するurl_forオプションを宣言する
  ―action_mailer.default_url_optionsパラメータ
 メールを送信する―deliverメソッド
 HTMLメールを送信する―.html.erbファイル
 メール本文に共通のテキストを挿入する―layoutメソッド
 添付ファイル付きメールを送信する―attachmentsメソッド
 メールの出力形式を制御する―mailメソッド
Action Mailbox
 概要
 Action Mailboxをインストールする
  ―rails action_mailbox:installコマンド
 イングレスのための資格情報を登録する―rails credentials:editコマンド
 イングレスのための設定を定義する(SMTPリレーエージェント)
  ―action_mailbox.ingressパラメータ/
   rails action_mailbox:ingress:xxxxコマンド
 イングレスのための設定を定義する(メールサービスプロバイダ)
  ―action_mailbox.ingressパラメータ
 ルーティングルールを設定する―routingメソッド
 メールボックスをセットアップする―rails generate mailboxコマンド
 メール受信の前処理を行う―before_processingメソッド
 メールを返信する―bounce_withメソッド
 受信メールを処理する―processメソッド
 メールが削除されるまでの時間を設定する
  ―action_mailbox.incinerate_afterパラメータ
 development環境でメール受信を実行する―コンダクターコントローラ
Action Text
 概要
 Action Textをインストールする―rails action_text:installコマンド
 モデルにリッチテキストフィールドを追加する―has_rich_textメソッド
 リッチテキストフィールドをフォームで参照する―rich_text_areaメソッド
Action Cable
 概要
 サーバにチャネルを作成する―rails generate channelコマンド
 サブスクライブされたときの処理を指定する―subscribed/unsubscribedメソッド
 クライアントにサブスクリプションを作成する
  ―consumer.subscriptions.createメソッド
 ストリームを作成する―stream_fromメソッド
 クライアントからアクションを実行する―performメソッド
 特定のモデルにブロードキャストする―stream_for/broadcast_toメソッド
 ブロードキャストする―broadcastメソッド
 サブスクリプションアダプタを設定する―cable.ymlファイル
 許可する送信元を設定する
  ―action_cable.allowed_request_origins/
   action_cable.disable_request_forgery_protectionパラメータ
Active Storage
 概要
 画像処理サポートのためのライブラリをインストールする(Windows)
 画像処理サポートのためのライブラリをインストールする(macOS)
 Active Storageをセットアップする
  ―rails active_storage:installコマンド
 サービスを定義する―storage.ymlファイル
 サービスにAmazon S3を使う―storage.ymlファイル
 サービスにMicrosoft Azure Storageを使う―storage.ymlファイル
 サービスにGoogle Cloud Storageを使う―storage.ymlファイル
 利用サービスを設定する―active_storage.serviceパラメータ
 ファイルとレコードにマッピングを設定する(1対1)
  ―has_one_attachedメソッド
 ファイルとレコードにマッピングを設定する(1対多)
  ―has_many_attachedメソッド
 ファイルをアップロードする―file_fieldメソッド
 ファイルを表示する―representable?/representationメソッド
 ファイルをプレビューする―previewable?/previewメソッド
 レコードにファイルを添付する―attachメソッド
 ファイルが添付されているか調べる―attached?メソッド
 添付ファイルのバリアントを指定する―variantメソッド
 バリアントプロセッサを指定する
  ―active_storage.variant_processorパラメータ
 ファイルシステムのファイルを添付する―attachメソッド
 添付ファイルを削除する―purge/purge_laterメソッド
 リダイレクトモードでファイルを配信する
  ―url_for/rails_blob_xxxxメソッド
 プロキシモードでファイルを配信する
  ―rails_storage_proxy_xxxxメソッド/
   active_storage.resolve_model_to_routeパラメータ
 ファイルをダウンロードする―openメソッド
 ファイルが解析済みか調べる―analyzed?メソッド
 画像を変形する―variable?/variantメソッド
Active Job
 概要
 ジョブを作成する―rails generate jobコマンド
 キューを指定してジョブを作成する―rails generate jobコマンド
 ジョブをキューに登録する―perform_laterメソッド
 ジョブの実行タイミングなどを指定する―setメソッド
 キューアダプタを指定する―active_job.queue_adapterパラメータ/queue_adpterメソッド
 ジョブが使うキューを指定する
  ―queue_asメソッド/active_job.queue_name_prefixパラメータ
 ジョブをただちに実行する―perform_nowメソッド
 コールバックを設定する―xxxx_enqueue/xxxx_performメソッド
 例外をキャッチする―rescue_from/retry_on/discard_onメソッド
キャッシュ
 キャッシュを有効化する―action_controller.perform_cachingパラメータ
 開発環境でキャッシュの有効・無効を切り替える―rails dev:cacheコマンド
 ページの一部分をキャッシュする(フラグメントキャッシュ)
  ―cacheメソッド
 複数のページでフラグメントキャッシュを共有する―cacheメソッド
 フラグメントキャッシュの有無を確認する―fragment_exist?メソッド
 キャッシュの保存方法を変更する―cache_storeパラメータ
プラグイン
 プラグインとは?
 ページング機能を実装する(アクションメソッド)―paginateメソッド
 ページング機能を実装する(テンプレート)―will_paginateメソッド
 ページングに関する情報を取得する―will_paginateプラグイン
 アプリケーションに認証機能を実装する―rails generate deviseコマンド
 認証の諸機能へのリンクを作成する―xxxxx_pathメソッド
 コントローラクラスに認証機能を実装する―authenticate_xxxxx!メソッド
 ログインユーザの情報を取得する
  ―xxxxx_signed_in?/current_xxxxx/xxxxx_sessionメソッド
 認証関連ページを日本語化する―devise.ja.ymlファイル

Chapter 8 フロントエンド開発
 概要
 基本的な構成
 バンドラーを使う構成
 CSSプロセッサを使う構成
 フロントエンド関連のデフォルト構成
基本コマンド
 JavaScript/CSSをビルドしてサーバを起動する―bin/devコマンド
 アセットを事前コンパイルする―rails assets:xxxxxコマンド
アセットパイプライン
 概要
 Sprocketsの挙動を制御する―assets.xxxxxパラメータ
 Propshaftの挙動を制御する―assets.xxxxxパラメータ
 JavaScript/スタイルシートをインクルードする
  ―javascript_include_tag/stylesheet_link_tagメソッド
 JavaScriptのコードをエスケープ処理する―jメソッド
Import Maps
 概要
 モジュールをコマンドでピン留め/解除する―importmapコマンド
 モジュールをピン留め/解除する―pin/pin_all_fromメソッド
 マッピングをインクルードする―javascript_importmap_tagメソッド
 マッピングを出力する―importmapコマンド
JavaScriptバンドル
 概要
 バンドラーをアプリケーションに組み込む―rails newコマンド
 バンドラーの動作をカスタマイズする―esbuild/rollup/webpackコマンド
CSSバンドル
 概要
 CSSプロセッサをアプリケーションに組み込む―rails newコマンド
Hotwire
 概要
 Hotwireをフォーム/リンク単位で無効にする―form_with/link_toメソッド
 Hotwireをアプリケーション全体で無効にする
  ―Turbo.session.driveメソッド
 フレームを作成する―turbo_frame_tagメソッド
 コンテンツを挿入する
  ―turbo_stream.prepend/turbo_stream.appendメソッド
 コンテンツを置き換える
  ―turbo_stream.replace/turbo_stream.updateメソッド
 コンテンツを削除する―turbo_stream.removeメソッド

付録
本番環境へのデプロイ

コラム
AbstractController::DoubleRenderError例外に要注意
JSONを整形して見るJSONViewer
Rails以外のRubyによるWAF
Windows版Rubyは最新版をむやみにインストールしない
Railsの「宣言」記法とクラスメソッド
concernsフォルダとは?
RailsアプリをVSCodeで開発する
Railsアプリケーションの初期化ファイルの使い分け
has_many/has_oneとbelongs_toメソッドは双方必須?
gemコマンドの主なオプション
コーディング規約
Rubyの高速化アプローチ
日付/時刻に関する便利なメソッド
binフォルダとは?
状態管理の手法
ハッシュの省略形には要注意
HTML5とHTML Living Standard
Railsを支える標準基盤 - Rack
Railsアプリ開発に役立つ情報源
Railsをより深く学ぶための参考書籍
コードの改行位置に要注意
Action~とActive~の違いとは?
Pipedream
Trixエディタ
rakeコマンド?railsコマンド?
Railsアプリケーションの配布
Bootsnap
Import MapsとWebブラウザ
JavaScriptバンドラーの比較
Stimulusとは?

本ページへのリンクには、このロゴをご利用ください。


著作権情報個人情報保護について広告掲載についてRSSフィードについて
出版社の方々へ会社概要スタッフ紹介サイトマップ  
書籍/記事に関するご質問/お問い合わせは「WINGSお問い合わせフォーム」をご利用ください。
Copyright(c) 1998-2024,Yamada Yoshihiro.  All Right Reserved.