雛形の自動生成ーscaffoldについて (1)

「scaffold」は、雛形のソースコードを生成することができます。

scaffold hoge


Aptana上でこの操作を行うには、
画面の下のほうにある[Generator]タブを開き、左側のプルダウンからscaffoldを選択、その下のラジオボタンで「生成」を選択、右側のプルダウンに引数(この例では hoge )を入力して「実行」ボタンを押します。


このコマンドを実行することにより、テーブル"hoges"に対する各種メンテナンス画面の雛形のソースコードを作ってもらえます。

  • 一覧画面(データの一覧と、新規・修正・削除へのリンクを有する)
  • 新規登録画面(1レコード単位)
  • 修正画面(1レコード単位)
  • 参照画面(1レコード単位)
  • 削除処理(1レコード単位)


ここで肝になるのは、名づけの規約です。

ノンカスタマイズのままで動くものを作るには、まず次のようなテーブルを作成しておく必要があります。

  • テーブル名を複数形にしとく(英語の一般的な複数形はサポートされています。mouse→mice とか。)
  • テーブルの主キーは "id" というカラム名とし、データ型を、INTEGER の AUTO INCREMENT にしとく(MySQLの場合)

そして、scaffoldを実行するときに、第一引数に、テーブル名の単数形を渡してやります。

こうすると、Railsが、第一引数で渡された文字列の複数形を持つテーブルを探しに行き、そのテーブルの主キーをidと想定した上で、SELECT, INSERT, UPDATE, DELETE の各処理を行える雛形ソースコード一式を作ってくれます。


雛形として作られるソースコードの構成については、次回エントリで説明します。