scaffoldのviewのテンプレートをカスタマイズする
昨日の『ソフトウエア開発プロフェッショナル』を読んだ後、エンジニアリングを軽視してはいけないと思いました。本書中にあった簡単に石を運ぶような仕組みというのは、事前準備の賜物でしょう。ということで、railsのscaffoldをカスタマイズしてみることに。
ActiveScaffoldみたいなものを自前で用意できたら便利かと思い、ちょっとやってみました。バージョンはRails 2.3.2です。まずはviewのテンプレートのカスタマイズから。
- mkdir -p RAILS_ROOT/lib/generators/my_scaffold/templates (my_scaffoldの部分は任意の名前で良い)
- cp RUBY_HOME/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails_generator/generators/components/scaffold/scaffold_generator.rb RAILS_ROOT/lib/generators/my_scaffold/my_scaffold_generator.rb
- cp RUBY_HOME/lib/ruby/gems/1.8/gems/rails-2.3.2/lib/rails_generator/generators/components/scaffold/templates/* RAILS_ROOT/lib/generators/my_scaffold/templates
- RAILS_ROOT/lib/generators/my_scaffold/my_scaffold_generator.rbを開き、クラス名をMyScaffoldGeneratorに変更する
- RAILS_ROOT/lib/generators/my_scaffold/templates下のテンプレートファイルを適当に編集する
my_scaffoldを実行します。
これで編集したテンレプートが適用されていることを確認できます。