2011年9月20日火曜日

Rails 3.1環境も作っておこう

興味のあるサンプルコードがRails3だったもので
この環境も作っておこうと思いました。

Rails 3.1.0
Ruby 1.8.7(2011-02-18 patchlevel 334)
gem 1.3.7

この他、gemfileの記述に沿って
インストールされたものが以下です。

$ gem bundle
bundler (1.0.12)
coffee-rails (3.1.0)
coffee-script (2.2.0)
coffee-script-source (1.1.2)
heroku (2.6.1)
jquery-rails (1.0.13)
rake (0.9.2)
ここで問題が起きた。
本来bundlerというのは、プロジェクトルートで走らせると、
アプリごとにgemがインストールされます。

つまりアプリ毎のgem管理ツールということ。

なのに、上記ではシステムのgemにインストールされてしまったのです。
システムのgemを汚してしまった。

これは失敗。

なので、アプリのルートに移動して
$ bundle install vendor/bundle
としないといけなかったようです。
参考:http://d.hatena.ne.jp/mirakui/20100703/1278165723

もっと言うと
$ bundle install vendor/bundle --disable-shared-gems
とすると、スキップされずにプロジェクトに全てインストールされるようです。

あ、ついでにというかこれを機に
CoffeeScriptからjavascript(とprototype.js)に入ってみようかと思ってます。
思ってるだけ。

2011年9月5日月曜日

ActiveRecordに備わっているもの

代表的なものは、フォームに入力されたデータをデータベースに書きこむ前に
妥当性をチェックする「validates・・・」。

内部的な振る舞いとして覚えておきたいことは、

  • 検証結果がOKならtrue、NGならfalseを返す
  • NGの場合のエラーメッセージを生成している
の2つ。

一番目は、controllerでif文の処理に使うし
二番目はメッセージを取得するメソッドを実装しないと表示しないので
覚えとかないとね。
※scaffoldで作ると標準で実装されるけど。。

2011年9月3日土曜日

Aptanaの設定

Aptanaの環境設定は、
Ruby、gem、Railsのパスをしっかり通しておくことを基本とする。
これ重要のようです。

特に、同じアプリをターミナルコマンドとIDE、エディタで扱う時、
/usr/local/bin
パスを通しておかないと、
Railsのバージョンがチグハグになってしまうと。

あーややこしや。