ASCIIcasts
Episode Archive
- 286 Draper
- 複雑なビューロジックをDraperで整理しましょう。Draper gemが提供する、presenterにとても似たdecoratorを使って、ビューロジックをオブジェクト指向的な手法でまとめることができます。今回のエピソードでは、複雑なテンプレートをステップバイステップでdecoratorにリファクタリングします。
- 285 Spork
- Sporkは、Railsアプリケーションを一度バックグラウンドで起動することでテストスイートの読み込み時間を改善します。Guardと一緒に使えば最強の組み合わせとなり、テスト駆動開発で素早いフィードバックを得ることができます。
- 284 Active Admin
- Active Adminを利用すると、わずかなコマンドですばやく管理用画面を作成できます。外観がきれいなだけでなく、今回のエピソードで紹介するように自由にカスタマイズが可能です。
- 283 Sorceryで認証
- Sorceryはフル機能かつモジュール方式の認証ソリューションで、コントローラ層とビュー層はユーザが自由に作ることができます。
- 282 Rails 3.1へのアップグレード
- Rails 3.1へのアップグレードはとても簡単ですが、Asset Pipelineの利点を活かすには追加の作業が必要になります。でも恐れることはありません。今回のエピソードで必要なステップを一歩ずつ案内していきます。
- 281 Foreman
- ForemanはRailsアプリケーションの開発時に依存しているプロセスの管理を助けてくれます。本番環境へ移行するためのエクスポートコマンドも備えています。
- 280 RailsでPry
- PryはIRBの代替で、多くの優れた機能を備えています。今回はPryをRailsアプリケーションに統合する方法と、デバッグ作業で役に立つ使い方を紹介します。
- 279 Asset Pipelineを理解する
- Asset PipelineはおそらくRails 3.1でもっとも大きな新機能ですが、最初は魔法のように感じるかも知れません。今回はAsset Pipelineのしくみを探っていきます。
- 278 Sunspotで全文検索
- Sunspotは、Solrを利用して全文検索を簡単に実現します。今回のエピソードでは、いろいろな属性に対して検索を行い、検索結果をさらに絞り込むためにファセットを追加する方法を紹介します。
- 277 マウント可能なエンジン
- Rails 3.1でエンジンが大きく更新されました。任意のパスへのマウント、assetsの組み込み、ジェネレータの実行など、新機能を今回のエピソードで見ていきます。
- 276 時刻とWebリクエストをテストする
- 現在の時刻や外部Webリクエストを扱うコードをテストすることは難しくなりがちです。今回はこれらのテストをTimecopとFakeWebというgemを用いて行う方法を紹介します。
- 275 私のテスト手法
- 今回は前回のエピソードで作成したパスワードリセット機能のテストを追加する方法を紹介します。RSpec、Capybara、Factory Girl、Guardを使用してrequest、model、mailer用のspecを作成します。
- 274 「ログイン状態を記憶」と「パスワードをリセット」
- 認証機能をゼロから作るのは簡単ですが、さらに機能を拡張するにはどうすればいいでしょうか。今回は「ログイン状態を記憶」のチェックボックスと「パスワードをリセット」のリンクを追加します。
- 273 Geocoder
- 地理データを扱う必要があるときは、Geocoderという優れたgemを使って住所や地理座標を変換したり、近くの観光スポットを探したり、距離を測定したり、その他にもいろいろなことができます。
- 272 RedcarpetでMarkdown
- RedcarpetはMarkdownを解釈する簡単に操作できるgemです。今回のエピソードではそのカスタマイズ方法とPygmentsとAlbinoを介してシンタックスハイライトを追加する方法を紹介します。
- 271 Resque
- ResqueはRedisを用いてバックグラウンドジョブを作成します。複数のキューをサポートし、キューをモニタリングできる管理画面も提供されます。
- 270 Rails 3.1の認証機能
- 今回は認証で役に立つRails 3.1の3つの新機能(より簡単なHTTPベーシック、データベースでのセキュアパスワード、SSLの強制)を紹介します。
- 269 テンプレートの継承
- Rails 3.1ではコントローラの継承がビュー層にも適用されます。今回は、アプリケーションのすべてのビューで共有されるテンプレートと、サブドメインに応じてテンプレートをオーバーライドするための参照パスを追加する方法を紹介します。
- 268 SASSの基礎
- SASSは、変数、ネスト、mix-inなどでCSSの機能を拡張します。今回はRails 3.1アプリケーションで単純なCSSをSCSSに変換する方法を紹介します。
- 267 CoffeeScriptの基礎
- CoffeeScriptを使えばJavaScriptを簡潔に美しく書くことができます。今回のエピソードではRails 3.1アプリケーションのJavaScriptコードをCoffeeScriptに書き換えます。
- 266 HTTPストリーミング
- HTTPストリーミングを使用すると、Railsアプリケーションがまだリクエストを処理している間にブラウザがHTMLレスポンスの処理を開始することができます
- 265 Rails 3.1の概要
- Rails 3.1について解説するシリーズの第1回です。ベータ版のインストール方法といくつかの新機能を紹介します。
- 264 Guard
- Guardはファイルを監視し、ファイル修正時にコマンドを実行します。これにより自動的に、テストをバックグラウンドで実行したり、開発用サーバを再起動したり、ブラウザを再読み込みしたりなど、いろいろなことが可能になります。
- 263 クライアント側での検証
- ユーザがフォームに入力中に直接検証エラーを表示できればユーザの使い勝手は向上します。client_side_validations gemを使ってこれを実現する方法を学びましょう。
- 262 Ancestryでツリー構造
- Ancestry gemは階層を扱えるだけでなく、深くネストされたメッセージを一度の検索で取得することができ、取得した階層データを並べ替えるメソッドも提供します。
- 261 JasmineでJavaScriptのテスト
- JavaScriptをテストしていますか? Jasmineでspecを追加する方法を学びましょう。jasmine-jqueryによるjQueryの統合についても説明します。
- 260 Fayeでメッセージング
- Fayeは、Railsアプリケーションでプッシュ通知を簡単に実現する購読/配信用サーバです
- 259 Decent Exposure
- decent_exposure gemを使用すれば、インスタンス変数の代わりにメソッドを用いてコントローラのデータをビューで簡単に利用できるようになります。
- 258 トークンフィールド
- jQuery Tokeninputプラグインを使えば、多対多の関連において自動補完によるリストの入力を簡単に実装できます。
- 257 request specとCapybara
- RSpecのRequest specは、アプリケーション全体が正しく動作していることを保証する優れた方法です。合わせて、Seleniumを使用してCapybaraでJavaScriptの統合テストを行う方法を紹介します。
- 256 国際化のバックエンド
- Railsの国際化は簡単ですがYAMLファイルの管理は簡単ではありません。今回のエピソードではRedisを使用してウェブ画面から翻訳を管理する方法を紹介します。
- 255 PaperTrailで操作の取り消し
- 「取り消し」と「やり直し」の機能は、PaperTrailなどの世代管理のgemを使用して簡単に実装できます。モデルのフラッシュメッセージに取り消しのリンクを追加する方法を学びましょう。
- 254 Kaminariでページ分割
- Rails 3でページ分割が必要なら、Kaminariを試してみてください。きれいで柔軟性があり、ActiveRecordの検索式の記法によくなじむスコープを利用しています。
- 253 CarrierWaveでファイルのアップロード
- CarrierWaveで、アプリケーションに簡単できれいにファイルアップロード機能を追加できます。多くのORM、フレームワーク、画像処理プログラムをサポートしています。
- 252 Metrics Metrics Metrics
- コードメトリクスに関するこのエピソードでは、Metric Fu、Metrical、SimpleCov、Rails Best Practices、その他のツールを紹介します。
- 251 MetaWhereとMetaSearch
- MetaWhereはActiveRecordでSQLを使わすに複雑な検索を行う方法を提供します。MetaSearchを利用すれば複数の条件を指定する検索フォームを簡単に作成できます。
- 250 ゼロから作る認証機能
- 認証機能をゼロから作ることは難しくありません。それに、認証がどのような仕組みで動いているかについてより深く理解できるようになります
- 249 Rails 3のnotification(通知)
- Rails 3では、ActiveSupport::Notificationsクラスで計測機能がサポートされています。「購読(subscribe)」でnotificationを受信し、「計測(instrument)」して発信します。
- 245 Bundlerでgemを作る
- 'bundle gem'コマンドで簡単にgemを作成できます。今回のエピソードではその方法を順を追って説明していきます。
- 241 簡単なOmniAuth
- ユーザ名、パスワードを持つ必要がなかったり、ユーザごとに複数の認証を行わなくてもいい場合、OmniAuthで簡単に認証のしくみを付加できます。
- 210 Deviseのカスタマイズ
- 今回のエピソードでは引き続きdeviseを見ていきますが、今回は特にビュー、ルーティング、バリデーションのカスタマイズ方法を取り上げます。
- 209 Deviseの導入
- Deviseはフル機能の認証手法で、すべてのコントローラロジックとフォームビューを自動的に処理します。今回のエピソードでその設定方法を学びましょう。