BitArts Blog

ロードバイク通勤のRubyプログラマで伊豆ダイバー。の個人的なブログ。

scaffold自作してみるか

業務アプリケーションの多くは、テーブルに対するCRUD(Create/Read/Update/Delete)操作が基本。乱暴な言い方をすれば、開発のかなりの部分がCRUDのためのGUIを作っているようなもんです。もうルーチンワークみたいな退屈な作業。 Ruby on Railsのscaffold機能は、CRUDアプリケーションを一瞬で自動生成する強力な機能です。でもちなみにRailsのデモで定番のscaffoldメソッドはカスタマイズできないので実は全く使い物になりません。だから普通はコードを自動生成するscaffoldジェネレータのほうを使います。これで生成されたscaffoldをベースに拡張していくという開発方法は大変開発効率が高いのです。 というscaffoldジェネレータは大変強力だけど、ちょっと微妙なところもある。 - 見た目がダサすぎる - 検索機能がない - テーブルごとに沢山の同じようなコードができてしまう - listとshowは動的に全フィールドを表示する作りになっている。現実的には結局全部のビューを書き直すハメになり面倒。 - GetTextで日本語対応させるのも面倒 とくに毎回生成されるコントローラのコードについては、自動生成とはいえ全然DRYじゃないので、generate scaffoldする度に罪悪感がつのっていきます。 で、でだ。自分好みのscaffoldが生成されるジェネレータプラグインを作れば幸せになれるんだろうな。取り組んでみるか。