あけまして、Rails 2.0 対応

2008年になりました。カウントダウンTVを見ながらコーディングをしつつ年を越えました。

とりあえず昨年の積み残しで、実際のコードで1.2.3ベースのコードを2.0対応させています。とりあえずは、トップページの表示に問題がないレベルまでいってから rake test:unit かまそうと思っています。

session data integrity

environment.rb が変わっています。こんな感じで、config.action_controller.session = {:session_key => .. , :secret => .. } をつけないと怒られます。

  characters = ('a'..'z').to_a + ('A'..'Z').to_a + ('0'..'9').to_a
  secret = Array.new(48){characters[rand(characters.size)]}.join

  config.action_controller.session = {
    :session_key => "_webjourney_session",
    :secret => secret
  }
続きを読む

acts_as_taggable :dependent => true が変

これに関しては、:dependent => :destroy に直せばいいんだけれども、script/plugin で入る acts_as_taggable は別物に変わっているような?雰囲気でよくわからない状況に。結局、http://agilewebdevelopment.com/plugins/acts_as_taggable_on_steroids のほうを使うことにした。

で、これで、rake test:units がほとんど通る状況になったんだが、どういうことか、test/unit の直下にあるファイルだけをテストする分にはOKで test/unit/rss/rss_feed.rb をおいた状態でtest:unitsを流すと SystemStackError : stack level too deep になる。まだfixtureの読み込み関連でバグっているらしい。もっともこれは、以前からあったバグなんだけれど(ぉ。

gettext/rails が動かない

結論から言うと、Rubycgi の仕様と、Railscgi の仕様がミスマッチを起こしているようです。Ruby のバージョンアップ(1.8.6-p26以上)をすることで解決できます。Rubyのバージョンアップなんてやだよ!な人は原因に関しては続き参照してしかるべき対処を。

続きを読む