ActiveRecordからfixtureを作る

稼働中のDBからfixtureを生成したくなって色々調べてみた。 (csvでエクスポートすればいいじゃんとかいうのは却下) ar_fixturesプラグインが有名だけど、最近のRailsでは色々とめんどくさいらしい。 というわけでこちらの記事を参考に(というか丸写しで)やってみた。 実行するとschema_migrationsテーブルにidカラムがないよ、というエラー。 そりゃそうだよな、と思って改めてextract_fixtures.rakeを読むと(先に読めよ)

skip_tables = ["schema_info"]

という行がある。Rails2.1でschema_infoはschema_migrationsに変わっているので、この行を

skip_tables = ["schema_migrations"]

に変更すればおk。 あとはrake db:fixtures:extractで自動的に抽出してくれる。