唐突ですが、Macユーザ(Leopard or Tiger)がRuby on Railsの開発環境をゼロからセットアップしてHello Worldするまでの最短・最小の手順を書いてみたいと思います。
書いてある通りに実行するだけで超簡単なので、Macユーザは今すぐやってみましょう。Macを持ってない人は・・・Macを買うといいですよ。:)
MacPortsとは、Macで開発をするなら欠かせないパッケージ管理システムです。
これさえ入っていれば、開発に必要な道具をインストールするのが圧倒的に楽になります。OSのバージョンに合わせてインストーラをダウンロードし、インストールが終わったら、ターミナルから
$ sudo port -v selfupdate
を実行してMacPortsそのものを最新状態へとアップデートします。
インストールが成功していれば、
$ echo $PATH
とやれば「/opt/local/bin」が先頭に追加されているはずです。なお、MacPortsでは /opt/local 以下にインストールしたパッケージが格納されます。
UPDATE:
あと、Macに付属のインストーラDVDからXcodeもインストールしておきましょう。
UPDATE:
Leopardでは標準でRubyGemsがインストールされているのでこの手順は必要ありません。
では早速MacPortsを使ってインストールしましょう。これまた超便利なRubyのライブラリを管理してくれるツール「RubyGems」を入れましょう。
$ sudo port install rb-rubygems
同時にRubyGemsが必要とするライブラリを色々とインストールしてくれるはずです。たぶんRuby本体も1.8.6へと更新されるはず。
TigerユーザはOS標準のRubyが壊れているので、以下のコマンドでRubyのバージョンが新しくなっていることを確認してください。
$ ruby -v ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-darwin8.11.1]
UPDATE:
Leopardでは標準でRailsがインストールされているのでこの手順は必要ありません。
さて、RubyGemsがインストールされたら、あとは簡単です。gemコマンドを使ってrailsをインストールしましょう。
$ sudo gem install rails --include-dependencies
これでRailsのインストール完了です。
さて、あなたの最初のwebアプリを作成する場所を決めましょう。たとえば [Your_home]/Documents/rails-demo/ にするとします。
$ cd ~/Documents/ $ rails rails-demo create app/controllers create app/helpers create app/models (中略) create log/production.log create log/development.log create log/test.log $ cd rails-demo $ pwd /Users/[Username]/Documents/rails-demo
うまくいきましたか?これでrailsの基本となるディレクトリツリーがrails-demoの中に生成されたはずです。この「rails」コマンドを使えば、railsアプリケーションをいくらでも作ることができます。
さて、以後の作業は全て「~/Documents/rails-demo」をカレントディレクトリとしてここから行うものとし、相対パスで表記します。つまり、「log/development.log」といえば、「~/Documents/rails-demo/log/development.log」を指すものとします。
さて、ここまでの時点で全てがうまくいっているかを確認してみましょう。
$ script/server
ブラウザを開き、「localhost:3000」へとアクセスしてみましょう。
これで、以下のような画面になりましたか?
もし表示されたなら、railsのセットアップは成功です。ターミナルに戻り、Ctrl + Cを押して server を停止しましょう。
今回は最短というコンセプトなのでDBを使いません。よって、DBを使わないという宣言をしてやる必要があります。
テキストエディタで「config/environment.rb」を開き、
config.frameworks -= [ :active_record ]
という一行をRails::Initializerの中、つまり最後の行にある「end」の手前に記述します。
UPDATE:
Rails 2.0.2以降では SQLite3 が標準になったため、この手順は必要なくなりました。
さて、再びターミナルに戻り、以下のコマンドを入力します。
$ script/generate controller Hello exists app/controllers/ exists app/helpers/ create app/views/hello exists test/functional/ create app/controllers/hello_controller.rb create test/functional/hello_controller_test.rb create app/helpers/hello_helper.rb
このように、hello_controller.rbとそれに関連するファイルが生成されますので、いま生成された「app/controllers/hello_controller.rb」をテキストエディタで開いてみましょう。
class HelloController < ApplicationController end
という2行だけがあるはずです。これを、以下のように編集してください。
class HelloController < ApplicationController def world render(:text => 'Hello World!') end end
さて、いよいよです。ターミナルから
$ script/server
を実行し、サーバを立ち上げておいてからブラウザで
http://localhost:3000/hello/world
へとアクセスしてみてください。
「Hello World!」と表示されたら、成功です!
ここまでの手順でいろいろと疑問が出てきた人もいるでしょう。そういう人は、RailsによるアジャイルWebアプリケーション開発などで勉強する方向に進めばよいと思います。
意外と初心者向けのチュートリアルで軽視されがちですが、大切なのが定期メンテナンスの方法です。以下の一連のコマンドを気が向いたときに実行すればよいでしょう。
$ sudo port -d selfupdate ... MacPorts本体とカタログを更新します $ sudo port upgrade installed ... MacPortsでインストールされているパッケージを全て最新版にします $ sudo gem update --system ... RubyGems本体を更新します $ sudo gem update ... RubyGemsでインストールされているRuby関連パッケージを全て最新版にします
UPDATE:
port syncによるパッケージカタログの更新はselfupdateに含まれるようなのでport syncを削除しました。
以上で最低限の環境構築・メンテナンスの方法は習得できたことになります。
さて、今回唐突にこういう話をしたのは、次回、ここでセットアップしたRailsを使って簡単なfacebookアプリケーションを作ってみようと思ったからです。
お楽しみに。
♪ Patrice Rushen / Forget Me Nots
※このエントリは CNET Japan ブロガーにより投稿されたものです。朝日インタラクティブ および CNET Japan 編集部の見解・意向を示すものではありません。
メンバー限定サービスをご利用いただく場合、このページの上部からログイン、またはCNET_ID登録(無料)をしてください。