Railsで undefined method `<=' for :db:Symbol (NoMethodError)
手元のアプリのRailsのバージョンを1系から2.0.2にあげたら
undefined method `<=' for :db:Symbol (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/quoting.rb:61:in `quoted_date' from /usr/local/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/quoting.rb:29:in `quote'
という謎のエラーがおきたので調べていたんですが、
entry= MyEntry.new() rss= RSS::Parser.parse("...", false) entry.latest_fetched= rss.items[0].date entry.save()
というようにRSSのアイテムのdateをActiveRecordに突っ込んでいたのが原因でした。どうもRSSのdateは勝手に特異メソッドでto_sを置き換えてるらしく、それがActiveSupport(こちらも勝手にTime#to_sを拡張している)と干渉しているようです。
entry.latest_fetched= rss.items[0].date.dup()
とすると回避できました*1。