也许我遗漏了一些东西,但我做了研究,无法找出为什么会这样。我正在使用 Rails 2.3.16 和 ruby 1.9.3,由一个巨大的 ibm-db2 支持。
假设我有一个类 Foo (我试图在这里建立一个简短的例子)
class Foo < ActiveRecord::Base
end
该类具有属性:电话(整数)和邮件(字符串)。
当我使用 Rails 控制台进行调试时
bundle exec ./script/console , or
RAILS_ENV=production bundle exec ./script/console
我可以通过执行以下操作加载 Foo 实例:
f = Foo.find_by_phone(123)
=> #<Foo phone: false, mail: "test@example.org">
如果我尝试使用 getter-method 来获取phone
-attribute:
f.phone
=> false
但是信息必须在那里,因为 rails i) 找到了对象并且 ii) 您可以执行以下 yaml 输出:
y f
---- !ruby/object:Foo
attributes:
phone: 123
mail: test@example.org
attributes_cache: {}
感谢大家提前帮助我,我确定我忽略了一些东西!