β版について
本書のステータスは現在β版であり、現在、著者やレビュアの方々により追加・修正が行われている段階です。 いま購入されてお読みいただけるのはその途上の原稿を元にしたものです。 最終的に正式公開されたものもダウンロードしお読みになることはできますが、 正式公開版を読みたい方には今しばらくお待ちいただくことになります。あらかじめご了承ください。
書誌情報
- 著者: 黒田努
- 発行日: 2012-04-04
- 最終更新日: 2012-04-04
- バージョン: 0.9.0
- ページ数: 143ページ(A4PDF版換算)
- 対応フォーマット: EPUB, PDF
- 出版社: 達人出版会
対象読者
Railsをこれから始める人(初心者)、または初心者に教える方
著者について
黒田努
愛知県出身。在ギリシャ日本国大使館で専門調査員として3年間勤務した後、趣味を活かしてWeb業界に転職。主にケータイサイトを作っていました。Perl, PHPを経由して、2006年にRubyとRailsに出会い、それ以降は「Rails関連の仕事しか引き受けない」というポリシーで仕事を続けています。
2007年、Railsの教育・コンサルティングを業務内容とする株式会社オイアクスを設立。2011年、プログラム言語Rubyに特化したシステム開発会社ルビキタスの代表取締役に就任(オイアクス社長を兼務)。主にベンチャー企業から相談を受けて、Webを使った新しいサービスの企画・開発と運用支援を行っています。
常に意識しているのは、どうすればプログラミング経験の浅い方や職業プログラマではない方がRails開発に参画できるか、ということです。独創的なWebアプリケーションのアイデアを持った方が素早く確実にそれを世に問うためのお手伝いをしたいと思っています。
著書に『改訂新版 基礎Ruby on Rails』(2012年、共著、インプレス・ジャパン)があります。
目次
はじめに
本書について
- 動作確認環境
- サンプルアプリケーション
- 読者サポート
- 連絡先
- 謝辞
第1章 バージョン3.0から3.2へ
- Railsのバージョンを上げる
- 設定・初期化ファイルの更新
- 動かしてみる
- app/assetsディレクトリ
- 動作確認
第2章 アセットパイプライン(1)
- アセットパイプラインとは
- マニフェストファイル
第3章 アセットパイプライン(2)
- 環境による動作の違い
- プリコンパイル
- ブラウザによる表示の確認
- 画像ファイルの扱い
- コンパイル済みアセットの削除
- フィンガープリント
第4章 Sass/SCSS
- Sass/SCSSとは
- SCSSを利用するための準備
- 変数の利用
- 宣言ブロックを入れ子にする
- Hinagikuの新しいビジュアルデザイン
- ページネーションラベルの日本語化
- ログ出力の制御
- SCSSのその他の特長
第5章 ユーザー認証(1) -- モデルの生成
- ログイン・ログアウト機能を加えよう
- Userモデルの生成
- NOT NULL制約とUNIQUE制約
- UNUQUE制約のケース・センシティビティ
第6章 ユーザー認証(2) -- パスワードの設定
- パスワードの設定
- before_save
- db/seeds.rbの整理
- usersテーブルのシードデータ
第7章 ユーザー認証(3) -- パスワードによるユーザーの認証
- authenticateメソッドの実装
- クラスメソッドhas_secure_password
- ユーザー認証機能の動作確認
- password_digestカラムに保存される謎の文字列について
第8章 ユーザー認証(4) -- クッキーとセッション
- ユーザーエージェントとクッキー
- セッション
- カレントユーザー
第9章 ユーザー認証(5) -- ログイン・ログアウト
- コントローラの生成とルーティングの修正
- ログインフォームの表示
- ログイン機能の実装
- アクセス制限
- ログアウト機能
第10章 ユーザー認証(6) -- 次回から自動的にログイン
- 再び「クッキー」について
- 自動ログイントークン
- チェックボックスの設置
- 「次回から自動ログイン」機能の実装
- なぜ「自動ログイントークン」が必要か
第11章 ユーザーとタスクとカテゴリーの関連付け(1)
- owner_id カラムの追加
- SQLite3の奇妙な振る舞い
- 関連付け
- 参照整合性チェックの修正
- シードデータの修正
第12章 ユーザーとタスクとカテゴリーの関連付け(2)
- tasks#searchアクションの修正
- prepareメソッドの修正
- tasks#createアクション他の修正
- タスクの登録・編集フォームの修正
- categoriesコントローラの修正
第13章 属性の保護
- ユーザーがタスクの所有者を変更できないようにしたい
- attr_protected と attr_accessible
- アプリケーション全体で attr_accessible の利用を義務付けるには
- db/seeds.rb の修正
第14章 自分のアカウント情報(1) -- 単数リソース
- 「自分のアカウント」を扱うリソース
- accountリソースの定義
- 自分のアカウント情報の閲覧
第15章 自分のアカウント情報(2) -- 「属性」の活用
- アカウント情報変更機能の実装
- setting_password属性の導入
第16章 自分のアカウント情報(3) -- フラッシュ
- フラッシュ
- アカウント情報の更新成功時にメッセージを表示する
- flash.noticeとflash.alert
- ログイン・ログアウト時のメッセージ
- ログイン失敗時のエラーメッセージ
第17章 自分のアカウント情報(4) -- パスワードの変更
- パスワード変更フォーム
- パスワードの変更
- 現在のパスワードの確認
第18章 ユーザー登録(1)
- ユーザー登録の流れ
- Emailモデルの作成
- Userモデルの修正
- ユーザー登録フォーム
第19章 ユーザー登録(2)
- ユーザー登録
- シードデータの修正
- エラーメッセージの表示順
- バリデーションコードの整理
第20章 ユーザー登録(3)
- メール送信の準備作業
- メールアドレス確認メールの送信
- メールアドレス確認URLをメール本文に埋め込む
- メールアドレスを確認する
第21章 ユーザー登録(4)
- User#verified_at の更新
- シードデータの修正
- メールアドレス未確認のユーザーの取り扱い
- 確認メールの再送信
- changed?
第22章 おわりに
開発環境のセットアップ
- Rubyのインストール
- RubyGemsの更新
- Rakeの更新
- Bundlerのインストールまたは更新
- SQLite3 のインストール
- サンプルアプリケーションHinagikuのインストール
- 動作確認
ユーザーがタスクの所有者を変更できるかどうかの実験
- 準備作業
- スクリプトの作成
- 実験(1)
- 実験(2)
- クッキーの値の調べ方