2011-11-01から1ヶ月間の記事一覧

Rails の ActiveRecord モデルテストの書き方ガイドライン

このエントリでは,Ruby on Rails (以下 Rails)の ActiveRecord モデルテストについて,1) どこの何をテストすればよいか,2) どのようにテストを書けばよいか,のガイドラインを示します.このガイドラインは Rails 公式のものではなく,id:passingloop …

factory_girl の採用面接: 自分の Rails プロジェクトで採用する前に確認すること

factory_girl は Ruby on Rails (以下 Rails)におけるフィクスチャリプレースメントの代表格で,採用している人も多いのではないでしょうか.「使い方」に関するブログ記事も多いです.しかし,採用を見送った人がその理由,「なぜ使わなかったのか」につ…

Rails で元に戻せないマイグレーションを書くときの作法: ActiveRecord::IrreversibleMigration

ActiveRecord のマイグレーションは,その中に up メソッドと down メソッドを書くことにより,データベースのスキーマを更新したり,変更を元に戻したりすることができ便利です.Rails 3.1 からは up, down を change メソッドにまとめて書くことができるよ…

find_by_sql で派生カラムを作ると update_attributes で更新できてしまう

ActiveRecord::Base を継承したモデルクラスで,テーブルに存在しないカラムに対して #update_attributes すると ActiveRecord::UnknownAttributeError 例外が発生します.たとえば,な foos テーブルに相当する class Foo < ActiveRecord::Base について,…

Rails の config で設定できる Rails 向け gem を作る

Rails アプリを開発していくと,プラグインやらエンジンやらで何やかんやと gem を作っていくことになります.このようにして作った gem は当然 Rails 向けなので,Rails アプリケーションの config で設定できるようにしたいところです.たとえば,passingl…

Project Tin Can とは

Project Tin Can は,SCORM 2004 の次の e-Learning を考える Rustici Software の研究プロジェクトです.Project Tin Can は ADL 公認のプロジェクトなので,実質的に SCORM 2004 の後継といってもいいでしょう.本エントリでは,この Project Tin Can の概…