Candicateを迎え、ページ数が300を超えました。当初よりもかなりボリュームも増え、全体が個人的に把握できなくなってきているので、まとめてみたいと思います。Recipes基本的にJavaScriptやらAjaxしたUI実装に関するレシピ。Editing通常のテキスト表示されている部分をクリックすると、入力欄に化けるアレの実装。Helper構築手順を学ぶ。Previewobserve_form&textilizeを使用した入力の動的プレビューを実装する。Field自動入力補完テキストフィールドの設定方法。いっても、text_field_with_auto_completeとかauto_complete_forとかで済んじゃう。Listリストの表示順をドラッグアンドドロップで入れ替える手法。並べ替えの方法はアドホックかつ強引な手口。RequestRJSを利用した1回のAjaxリクエストで複数のHTMLエレメントの更新をおこなう手法。SuggestやGmailの宛先入力風な自動補完リスト実装方法。"default")というRailsらしい手法によるテーマ切換テクニック。Pageslink_to_remoteの取得先を静的なHTMLから取得する。Pluralizationenvironment.rbに単数形←→複数形の定義を記述する。trueなんてしておくとシアワセになれる。Builderたとえば_form.rhtmlの中身をテーブルの中で組みなおすなど、「いつもやっている」ようにフォームを組み立ててくれるBuilderをアレンジする。GraphsImageMagick+RMagick+Gruffによる動的な画像生成手順。RecipesデータベースやらActiveRecord関係でアレコレするレシピ。Databaseどんだけ需要があるのか分かりませんが、データベースなしでRailsを動かす方法。DatabasesActiveRecordにestablish_connection指定をすると接続先のデータベースを切り替えられる。DatabasesRails規約に則していないデータベースに接続する方法。ConfigurationYAMLのエイリアス機能を使ったdatabase.ymlのDRY化。RelationshipsPersonがPersonな友達を多数持つような自己参照habtm構造の実現方法。Taggingacts_as_taggableを利用したWeb2.0(死語)的taggingの実装。Modelsacts_as_versionedを利用したレコードのバージョン管理実装。Management非migrationベースのアプリをmigrationベースに置き換える方法。Datahabtmだけど関連自体にデータを持つ場合の方法。trueなんていうことをしてみる実装。Associations関連自体にメソッドを追加する方法。Configdatabase.ymlにERb書法で記述する。RailsActiveRecordをRailsの外部で用いる方法。sumといった集計処理を行う方法。composed_ofAWDwRにもあったけど集約(composition)を実装する方法。読み込み専用なので使い道は限定される。MigrationsプレーンなActiveRecordクラスをMigration内で定義し、カラム追加などの影響を最小限にする方法。Recipesコントローラがらみのレシピ。Authentication既存のプラグインやenginesを使わない独自な認証処理を追加する実装。Authorization31番目のレシピを発展させ、ロールベースの認証を実装する。Actionsscaffoldなどではupdateとeditの二つのactionに分かれてしまうのを一つのactionでまとめてしまうDRY実装。ExpirySessionタイムアウトまでの残り時間を画面に表示する。ActionsCSVを生成する実装。pretty)routes.rbをいじってRailsのURLを意味あるものにする。Authentication認証をすり抜けて実装していくために常に認証済みにするtips。SessionsSessionの管理をデータベース(ActiveRecord)で行う方法。Codeマクロの実装方法。Rails静的なサイトをRailsで運用する方法。Recipesテスト関連のレシピ。FixturesFixtureのymlファイルをERbで記述する。Dataデータベースなどの生データからテスト用のFixtureデータを取り出す方法。Controllers複数のコントローラをまたぐテストコードの書き方。Helpers自作ヘルパーへのテスト方法。Recipes大局的なアプリケーション構築に関するレシピ。Generators自作generatorの作り方。IntegrationXPでいうところの「継続的な統合」のやりかた。Exceptions補足出来なかった例外をexception_notificationなどを使って通知する方法。Tasks独自のrakeタスクを作る。Time-zonesタイムゾーンの取り扱い方。tzinfo_timezoneなんていうプラグインもあるらしい。trunkからごっそり取って来る。Builderを使ってRSSを生成したり、auto_discovery_link_tagを埋め込んだりする。Plugins自作プラグインの作り方。URLs認証確認用などのランダムなURLを生成する。ContentsSessionデータをさくっと確認する方法。Applications複数のRailsアプリでModelをshared_modelsプラグインで共有する。Application自分のアプリだけではなく、RailsやpluginなどのAPIを含めたRDocを確認する方法。ImagesImageMagick/GraphicsMagickなどを使ってサムネイル画像を生成したりする。Thingsブレイク処理を簡単に実装する。Whatデータに対する更新履歴を記録する。LocalizationL10nする。Friendscript/consoleでデバッグなどをする。Formフォーム情報をSessionに対して自動的に草稿として格納する。ActiveRecord::Validationsする。Whitelistsコメント欄などで許可したいHTMLタグのホワイトリストの実装。Recipesメール送受信関係のレシピ。Emailsmultipart/alternativeなメールを作成する。Email受信メールのテスト方法。Fixtureとか使う。Attachments添付ファイルの送り方。Emailバウンスしたメールのハンドリング方法。visual_effectのname[Rails][Plugin]acts_as_searchableで全文検索してみる。[Mongrel]MongrelでRailsアプリを動かしてみる。Recipeカウンター333599。