Rails

Mac OS X Leopard上に作る快適なRuby on Rails開発環境

Developing Rails Applications on Mac OS X Leopardという記事がありました。Leopard上でRuby on Rails 2.0を使った開発を行うためのチュートリアルです。今後、以下の内容が順次公開されるようです。

  1. Xcode 3.0を使ってRESTfulなRailsアプリケーションを開発する方法
  2. AJAXとiPhoneインタフェースのサポート
  3. バージョン管理とCapistranoを使ったLeopardサーバへのデプロイ

現時点(2008.3.7)では「1.Xcode 3.0を使ってRESTfulなRailsアプリケーションを開発する方法」が公開されています。

恥ずかしながらXcodeをRailsの開発に使えることを知らなかったので、Leopard上に開発環境を構築する上で非常に参考になりました。せっかくなので簡単にまとめておきます。

関連プログラムのインストール

$ sudo gem update --system
$ sudo gem install rails
$ sudo gem update rake
$ sudo gem update sqlite3-ruby
現時点でインストールされるRailsは2.0.2です。チュートリアルも2.0.2をベースに書かれています。

Leopardではデフォルトでインストールされているgemは/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8に、新しくインストールするgemは/Library/Ruby/Gems/1.8へ格納されます。

Xcodeのインストール

XcodeはApple Developer Connectionに登録しないとダウンロードできず少し面倒ですが、CreativeStyle - Mac OS X(Leopard)にXcodeをインストールなどを参考にXcode 3.0をインストールしてください。

XcodeにRailsのプロジェクトを登録する

ここでは、対象となるRailsのプロジェクト名を記事に倣いexpensesとします。ターミナルから以下のようにしてプロジェクトを作成します。

$ rails expenses
すると、expensesというディレクトリ配下にファイルが作成されます。

Railsで開発する場合、expenses配下のファイルへ頻繁にアクセスすることになります。このため、ここへのアクセスのしやすさはとても重要ですが、Xcodeのオーガナイザを使えば容易にアクセス可能になります。expensesをオーガナイザへ登録してみましょう。

  1. Xcodeを起動しメニューからウィンドウ > オーガナイザを選択すると、中身が空のオーガナイザウィンドゥが開きます
  2. ファインダからexpensesディレクトリ(Railsのプロジェクトディレクトリ) をオーガナイザウィンドゥへドラッグ
  3. 先頭の参画をクリックするとexpensesディレクトリ配下の一覧が表示されます
  4. app/controllersディレクトリを開きapplication.rbを選択
  5. 画面下の四角のアイコンをクリックするとテキストエディタペインが現われます(以下がその画面イメージです) 200803070700
Xcodeのテキストエディタはシンタクスカラーリングやコードの折り畳みをサポートしているなど、なかなか高機能です。

オーガナイザからscript/serverを起動する

Railsではscript/serverでサーバ起動することができますが、ターミナルからコマンド入力せずにオーガナイザから起動するように設定できます。

  1. ディレクトリツリー先頭のexpensesを選択
  2. ツールバーの「実行」をクリックすると以下のウインドゥが開きます 200803070814-1
  3. 「+」アイコンをクリックし「新規シェルスクリプト」を選択。リストに追加された「シェルスクリプト」をダブルクリックして「サーバの起動」に変更
  4. ディレクトリツリーでexpensesを選択していることを確認し、右側の「ディレクトリ選択」ドロップダウンリストから「最上位のオーガナイザ項目」を選択
  5. 「コマンド」のフィールドへ「script/server」を入力し、「引数」のフィールドを空に。この時点の画面はこんな感じです 200803070833
  6. 「OK」ボタンをクリックし保存
  7. オーガナイザウィンドゥに戻り「実行」ボタンを押し、先程作成した「サーバの起動」スクリプトを実行します 200803070836
  8. 確認のためWebブラウザでhttp://localhost:3000/へアクセスすると、デフォルトのトップページが表示されました。 200803070842

オーガナイザからRakeタスクを実行する

ここまでの設定だけで、オーガナイザからRakeタスクを実行することができます。オーガナイザの「アクション」アイコンを長押ししてみてください。以下のようにRakeのタスク一覧が表示されます。

200803071020

一覧から例えばdb:migrateなどを選択してみます。以下のようなウィンドゥが開き、実行結果を参照することができます。

200803070852

いかがでしょう。Xcodeを使った開発環境はシンプルで、結構イケてると思いませんか? 個人的にはTextMateを使いたいと思っていたのですが、現時点では日本語の扱いが不自由なので、しばらくXcodeを使いこんでみたいと思います。

さて、ここまでXcode関連の話題のみ書いてきましたが、元ネタのDeveloping Rails Applications on Mac OS X Leopardはとてもわかりやすい良いチュートリアルだと思いますので、Leopard上でRailsの開発を始めたい方は読んでみると良いと思います。

| | コメント (61)

Railsでアプリの雛形を作る時に便利なプラグインやパッケージ

image

Railsは普通に使っても生産性が高いですが、豊富に用意されているプラグインやパッケージの中から、自分好みのものをピックアップし、アプリ開発の雛形にしておくと便利です。そんなわけで自分がRailsでアプリケーションを開発する際に良く使うもの、これから使ってみたいものをまとめておきます。

Acts as Authenticated
ユーザー管理、認証プラグイン。登録されたメールアドレスにメールを送信しアクティベーションすることもできる。
Attachment_fu
ファイルのアップロードをサポートするプラグイン。Acts as Attachmentを拡張したもの。
ActiveScaffold
Ajax対応の高機能なScaffoldを利用できる。
acts_as_ratable
モデルへレーティング機能を持たせるプラグイン。
Acts As Taggable On Steroids
acts_as_taggableを拡張したプラグイン。キャッシング、タグクラウドの計算機能などが追加されている。
jpmobile
携帯電話特有の機能を Rails で利用するためのプラグイン。携帯電話のキャリア判別、 端末位置情報の取得、IPアドレスの検証、携帯電話ビューへの自動振分け、文字コード変換機能/絵文字のキャリア間相互変換などの機能がある。
Ruby-GetText-Package
Rubyスクリプト中の文字列を簡単にローカライズでき、国際化されたアプリケーションを作ることができるパッケージ。
他の便利なプラグインはPlugins in Ruby on Railsを参照してください。

| | コメント (0) | トラックバック (0)

Rails 2.xの変更点と移行ポイントのまとめ

image

Rails 1.x→ 2.xの変更点と、実際に移行した際の情報について書いているページをまとめておく。まずは変更点がまとまっているページ。

次は実際に移行した方の作業ログ。

| | コメント (0) | トラックバック (0)