我正在将 Rails 应用程序从 2.0.2 迁移到 2.3.5。
我有一个模型类:
class EventQuery < ActiveRecord::Base
set_table_name 'EventQueries'
def to_s; name; end
end
我正在控制台中调试问题。我尝试为 EventQuery 对象分配一个属性:
./script/console production 加载生产环境(Rails 2.3.5)
>> q=EventQuery.new
=> #<EventQuery id: nil, role: nil, name: nil, description: nil, query: nil>
>> q.role="ADM"
> TypeError: can't convert String into Integer
from /usr/lib64/ruby/gems/1.8/gem /activerecord-2.3.5/lib/active_record/dirty.rb:135:in `[]='
(...)
在 Rails 2.0.2 中它工作正常:
./script/console production 加载生产环境(Rails 2.0.2)
>> q=EventQuery.new
=> #< EventQuery id: nil, role: nil, name: nil, description: nil, query: nil
>> q.role='ADM'
=> "ADM"
有任何想法吗?谢谢!
我现在认为这必须与作为应用程序一部分的插件 record_modified 有关。