試験公開中

このエントリーをはてなブックマークに追加

Rails3レシピブック 190の技

SBクリエイティブ

2,800円+税

定番から旬の一品までテクニック満載。Ruby on Railsの定番リファレンスとして好評を博したレシピブックが、装いも新たにRails 3版として登場。Rails開発の第一人者である松田明氏が参加。定番からRails 3系の新機能まで、Railsの使い方がわかる一冊。

関連サイト

本書の関連ページが用意されています。

内容紹介

定番から旬の一品までテクニック満載。Ruby on Railsの定番リファレンスとして好評を博したレシピブックが、装いも新たにRails 3版として登場。日本のRails開発の第一人者である松田明氏を加え、Rails 3.1に世界最速対応する。定番からRails 3系の新機能まで、これからのRailsの使い方がわかる

【『Rails3レシピブック』サポートページ】http://rails3recipebook.github.com/

書誌情報

  • 著者: 高橋征義, 松田明, 諸橋恭介
  • 発行日: (紙書籍版発行日: 2011-07-30)
  • 最終更新日: 2012-01-17
  • バージョン: 1.0.0
  • ページ数: 499ページ(PDF版換算)
  • 対応フォーマット: PDF
  • 出版社: SBクリエイティブ

対象読者

Railsで開発をされている方、Railsに興味のある方

著者について

高橋征義

札幌出身。Web制作会社にてプログラマとしてWebアプリケーション開発に携わるかたわら、日本Rubyの会を設立、現在まで同会会長。2010年6月に電子書籍の制作と販売を手がける株式会社達人出版会を創業、代表取締役を務める。1人でサービスができるのはRailsとgitとCapistranoのおかげだと信じている。好きな作家は新井素子。

松田明

ジンバブエ共和国出身、浅草在住。職業はフリーランスのRailsプログラマー/流しのフェロー。地域Ruby コミュニティ「Asakusa.rb」主宰。Kaminari、i18n_generatorsなどのGem の作者。趣味は、おいしいものを飲んだり食べたりすることと、Rails を読んだり書いたりすること。好きなActiveSupportのメソッドはObject#try。

諸橋恭介

宮城県出身。株式会社永和システムマネジメントにてRuby やRails を使ったプロジェクトに参加している。Railsは2006年から実務で使用しており、近頃ではRailsプロジェクトへの技術コンサルのような仕事もしている。RSpecやCucumberを使ったTDDに興味があったので、おそらく日本初のCucumberの書籍も書いた(達人出版会より、電子書籍)。好きなメソッドはObject#extend。

目次

第1章 Railsの基本

  • [001] Railsをインストールする
  • [002] Railsアプリケーションを作成する
  • [003] Railsアプリケーションのファイル構造を理解する
  • [004] DB接続を設定する
  • [005] モデル・ビュー・コントローラを自動生成する
  • [006] Railsの規約とは
  • [007] Railsの宣言的記法とは
  • [008] DBのマイグレーションファイルを生成する
  • [009] APIのドキュメントを参照する
  • [010] 使用しているRubyやRailsのバージョンを調べる
  • [011] Railsをバージョンアップする
  • [012] Railsやライブラリのバージョンを固定する
  • [013] 開発サーバを動かす
  • [014] Railsを対話的に実行する

第2章 コントローラ

  • [015] コントローラとは
  • [016] テンプレートを指定して描画する
  • [017] 文字列を直接描画する
  • [018] APIレスポンスを文字列として描画する
  • [019] 描画結果を文字列として取得する
  • [020] URLを生成する
  • [021] コントローラ以外からURLを生成する
  • [022] 他のURLへリダイレクトさせる
  • [023] ステータスコードのみのレスポンスを返す
  • [024] ページのレイアウトを設定する
  • [025] コントローラ全体の共通のメソッドを追加する
  • [026] コントローラ名やアクション名を取得する
  • [027] アクションの前または後にフィルタを適用する
  • [028] アクションの前後両方にフィルタを適用する
  • [029] フィルタの実行をスキップする
  • [030] リクエストの種類でレスポンスのフォーマットを変更する
  • [031] レスポンスフォーマットごとに処理を分岐する
  • [032] 簡単なメッセージを画面へ表示する
  • [033] セッションにデータを保存する
  • [034] セッションの保存方法を変更する
  • [035] セッションを失効させる
  • [036] フォームに入力された値を取得する
  • [037] リクエストヘッダの内容を取得する
  • [038] レスポンスヘッダの内容を設定する
  • [039] 画像やファイルをダウンロードさせる
  • [040] クッキーを設定する
  • [041] 本番環境でのエラーをまとめて処理する
  • [042] リソースへのルーティングを定義する
  • [043] リソースへのルーティングをカスタマイズする
  • [044] 複雑なルーティングを定義する
  • [045] Rackアプリケーションやミドルウェアを作る
  • [046] RackミドルウェアをRailsに組み込む
  • [047] Rackアプリケーションをマウントする
  • [048] Basic認証をかける
  • [049] Digest認証をかける
  • [050] SSLを使う

第3章 モデル

  • [051] モデルとは、ActiveRecordとは
  • [052] DBスキーマを定義する
  • [053] マイグレーションでRailsにとって特別なカラムを追加する
  • [054] DBを検索してモデルオブジェクトをロードする
  • [055] DBに初期データを投入する
  • [056] リレーションを理解する
  • [057] 検索条件を指定する
  • [058] 並び順を指定してDBを検索する
  • [059] 取得件数を指定してDBを検索する
  • [060] 関連テーブルとの結合を行う
  • [061] 関連モデルの情報をまとめてロードする
  • [062] 検索時に実行されるSQLの一部を変える
  • [063] 検索条件をモデルにあらかじめ定義する
  • [064] デフォルトスコープを定義する
  • [065] リレーションにかかっているスコープを除外する
  • [066] 複数のモデルにまたがるリレーションを連結する
  • [067] カラムを簡単に完全一致検索する
  • [068] モデルオブジェクトの内容をDBから再ロードする
  • [069] モデルオブジェクトを生成する
  • [070] モデルオブジェクトを保存してDBにレコードを追加する
  • [071] モデルオブジェクトを変更してDB内のレコードを更新する
  • [072] モデルオブジェクトを削除してDBからレコードを削除する
  • [073] 1対多の関連での参照元を設定する(belongs_to)
  • [074] 1対多の関連での参照先を設定する(has_many)
  • [075] 1対1の関連を設定する(has_one)
  • [076] 関連をまたいだ関連を設定する
  • [077] 多対多の関連を設定する
  • [078] ポリモーフィック関連を利用する
  • [079] 関連とDBへの保存のタイミングを整理する
  • [080] SQLを直接使って検索する
  • [081] SQLの集計関数を利用する
  • [082] トランザクションを使用する
  • [083] rails consoleでモデルを操作する
  • [084] レコードの作成時刻・更新時刻を自動的に保存する
  • [085] ロックを利用する
  • [086] DBに保存する値を検証する(バリデーションの概要を知る)
  • [087] バリデーションを定義する
  • [088] 対象の属性を軸にしてすっきりとバリデーションを定義する
  • [089] バリデーションメソッドを自分で定義する
  • [090] カラムに対応しない属性を保存可能にする
  • [091] コールバックを利用する
  • [092] オブザーバを利用する
  • [093] カウンタキャッシュを利用する
  • [094] バリューオブジェクトを使う
  • [095] DBアクセスを効率化する
  • [096] 複数の属性を更新する場合に、特定の属性の更新を防ぐ
  • [097] id以外のカラムを主キーにする
  • [098] テーブル名を変える
  • [099] DBクエリを直接発行する
  • [100] モデルの値の変更を検知する
  • [101] DBに存在しないモデルオブジェクトを定義する

第4章 ビュー

  • [102] ビューテンプレートとは
  • [103] ERBでRubyコードを実行してHTMLタグを出力する
  • [104] HTMLタグを取り除く
  • [105] URL文字列をコントローラ名やアクション名から生成する
  • [106] <a>タグを作成する
  • [107] <img>タグを作成する
  • [108] レイアウトを使ってテンプレートを分割する
  • [109] ネストしたレイアウトファイルを使う
  • [110] スタイルシートやJavaScriptを読み込む
  • [111] 分割されたテンプレートを描画する
  • [112] モデルに対応するフォームを作成する
  • [113] モデルに対応したフォーム内で入力項目を作成する
  • [114] 任意のフォームを作成する
  • [115] ラベルを作成する
  • [116] フォームに日付や時刻の入力項目を作成する
  • [117] フォームの二度押しを防ぐ
  • [118] フォームにドロップダウンリスト(<select>タグ)を作成する
  • [119] モデルのコレクションからドロップダウンリスト(<select>タグ)を作成する
  • [120] ネストしたモデルのフォームを作成する
  • [121] フォームに1種類の入力項目を複数作成する
  • [122] バリデーションのエラーメッセージを表示する
  • [123] 数値を特定のフォーマットで表示する
  • [124] RubyスクリプトでHTMLタグを作成する
  • [125] 規約に沿ったDOM要素のid属性やclass属性を付与する
  • [126] 繰り返し項目を簡単に出力する
  • [127] ヘルパーメソッドを作成する
  • [128] ビューの一部分をキャッシュする
  • [129] Hamlを使う
  • [130] Ajaxを使う
  • [131] HTML5タグを使う
  • [132] Sass(SCSS)を使う
  • [133] CoffeeScriptを使う

第5章 ActiveSupport

  • [134] 単数形と複数形を変換する
  • [135] クラス名とファイル名とテーブル名を相互変換する
  • [136] 日付や時刻を計算する
  • [137] 数値をバイト単位で表示する
  • [138] RubyオブジェクトとYAMLを相互変換する
  • [139] モデルオブジェクトや配列とXMLを相互変換する
  • [140] RubyオブジェクトとJSONを相互変換する
  • [141] ArrayやEnumerableに追加された便利なメソッド
  • [142] 変数が特定のパラメータリストに含まれるか判定する
  • [143] Hashに追加された便利なメソッド
  • [144] 小数を任意の桁数で丸める
  • [145] Railsスタイルのメソッド引数を扱う
  • [146] 複数のメソッドに同じパラメータを渡す
  • [147] クラス変数のアクセサを定義する
  • [148] 既存のメソッドに機能を追加する
  • [149] nilや空文字列などを透過的に扱う
  • [150] 簡単にGzip圧縮する
  • [151] タイムゾーン付きの日付を使う
  • [152] メソッドの呼び出し結果をメモ化する
  • [153] 国際化(日本語化)する

第6章 メール

  • [154] メールを送信する
  • [155] メール送信の設定を変更する
  • [156] 添付メールを送信する
  • [157] エラーメールの戻り先を設定する
  • [158] メールの文字化けを防ぐ
  • [159] 受信メールを扱う

第7章 ActiveResource

  • [160] ActiveResourceとは
  • [161] ActiveResourceを利用するための設定をする
  • [162] リソースを取得する
  • [163] リソースを作成・更新する
  • [164] リソースを削除する
  • [165] 単純なCRUD以外のリクエストを送信する

第8章 テスト

  • [166] RSpecを組み込む
  • [167] RSpecの基本的な動作を知る
  • [168] RSpecで使えるマッチャ
  • [169] テストを実行する
  • [170] モデルのテストを実行する
  • [171] コントローラのテストを実行する
  • [172] エンドツーエンドのテストを実行する
  • [173] モックやスタブを使う
  • [174] その他のテスティングライブラリを利用する

第9章 セキュリティ

  • [175] XSS攻撃の対策をする
  • [176] SQLインジェクション攻撃の対策をする
  • [177] CSRF攻撃の対策をする
  • [178] Session Fixation攻撃を防ぐ

第10章 デプロイと実行環境

  • [179] gemファイルを管理する
  • [180] Passengerを使う
  • [181] Capistranoを設定する
  • [182] Capistranoでデプロイする

第11章 ライブラリ

  • [183] OmniAuthでユーザ認証の仕組みを作る
  • [184] アップロードされたファイルを扱う
  • [185] DBの検索結果を複数のページに分けて表示する
  • [186] 非同期で処理を実行する
  • [187] I18nの訳語ファイルを自動生成する
  • [188] Rails用ライブラリを探す
  • [189] 自分で作ったライブラリをRubyGemsとして公開する
  • [190] Railsを直す
Home 書籍一覧 Rails3レシピブック 190の技 ▲ ページトップへ戻る