ポイント切替に苦戦

Railsのバージョンの違いにかなり混乱している。以前に途中まで評価した時も1.2.xを対象とした書籍を参考にしつつ、実際にインストールしたRailsが2.0だった訳だが、今回は更に上がってRails2.2だ。

今日もscaffoldではまったので、2.2での手順をメモ。(Rails1.2とは、scaffoldの引数から変わっているのだ)

Rails 2.xのscaffoldの場合(データベースは既に作成済みとする)

1. railsコマンドでプロジェクト作成
2. database.ymlの各項目(データベース名、ユーザ、パスワード、ホスト)を正しい値に変更
3. railsコマンドでプロジェクト作成
4. generate scaffoldコマンドでモデル、コントローラ、各種テンプレート、DBマイグレーション用スクリプトを一度に作成

generate scaffold モデル名 DBフィールド定義(属性名:型シンボル)、DBフィールド定義、...

5. DBマイグレーションをrakeから実行してモデルに対応したテーブルを生成

rake db:migrate

と、2.2ではたったこれだけでモデルのCRUDアプリケーションが出来てしまう。変更が必要であれば、generate migrationしてひな形を作成し、項目を追加していけば良い。(generate scaffoldで引数を指定しないと、モデルの項目を何も指定しないこととなり、属性が一つも無いモデルのアプリケーションを作ってしまうことになる。これに填った。)