|
【カテゴリ】 Ruby
Ruby on Rails 7ポケットリファレンス
|
WINGSプロジェクト 山内直/著
山田祥寛/監修
株式会社 技術評論社/発行
定価
3,520円
四六版・
624ページ・
2色
ISBN 978-4-297-13062-6
発刊日:
2022年10月20日
|
本書の特徴
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とは?
|
|