Rails 2.0 と前バージョンである Rails 1.2 との違いは、Rails 1.2 と Rails 1.1 との間の違いに比べれば微々たるものだが、そこには疑うことを知らない新規ユーザをつまずかせるのに十分な大きさの落とし穴がある。
Rails 2.0 のテーマのひとつはフレームワークのスリム化である。それにより、これまでは標準だったいくつかの機能がコア部分から削除され、プラグインとして提供されるようになった。1.2 をベースにしたチュートリアルに従っている人はそこでつまずく可能性がある。次に二つの例を挙げる。
- 多くのチュートリアルではデータベースに MySQL を使っている。それは MySQL が Rails のデフォルトだったからだが、Rails 2.0.3 ではデフォルトが SQLite3 に変更(source)された。AWDR は後ろのほうで SQLite3 の使い方について説明しているが、チュートリアルを辿っている新規ユーザにとっては、問題にぶつかった時点でそれを自力で解決するための備えにはならないかもしれない。
- AWDR の最初のほうで Rails のダイナミックな scaffold 機能を使用するが、現在のバージョンでは scaffold は次のようにプラグインをインストールした後でないと使用することができない。
script/plugin install scaffolding
このように Rails 2.0 で削除された機能には他に、AJAX を使ったインプレイスエディタやオートコンプリート、そして有名な act as モデル拡張のいくつかが含まれる。script/plugin list
削除された機能を提供していると思われるものを利用可能なプラグインの中から探したければ、上記のコマンドを実行するとよい。
gem install rails --version 1.2.6次に、すでにインストール済の Rails 2.0.x 用 gems パッケージを削除するか、もしくはプロジェクトを作成する際の Rails コマンドで次のようにバージョン番号を指定すればよい。
rails _1.2.6_ my_rails_projectgems を使ってインストールしたほとんどのコマンドは gem 内のコードを実行するラッパーである。それらのコマンドでは、左右にアンダースコアを付加したバージョン番号を最初の引数として与えて実行することにより、gem のバージョンを指定することができる。
Obie Fernandez 氏(source)が書いた『 The Rails Way (source)』のように、現時点で入手可能な Rails 2.0 対応書籍もすでにいくつか存在する。しかし、今までのところ、それらは全て多少 Rails に触れた経験をもっているユーザのための情報源を目指しているように思える。古い Rails 文献のいくつかは、時が経てば必ず更新されて、新しいチュートリアルが盛り込まれることになるだろう。
さしあたり Rails の新規ユーザに与えられている選択肢は二つだ。前バージョンからの変更点にぶつかったらひたすら苦労して切り抜けるか、あるいは恐らくより賢明な方法として、ある程度のレベルに達するまではチュートリアルに合わせたバージョンの Rails を利用するかである。
原文はこちらです:http://www.infoq.com/news/2007/12/rails-20-docs