私はrails3アプリに取り組んでいますが、アクティブモデルと少し混乱しています。これが私のモデルです:
class MyClass
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
attr_accessor :foo, :foo1, foo2
def initialize(attributes = {})
attributes.each { |key, value| send "#{key}=", value }
end
def self.all
get_elig
end
private
def self.get_elig
# My function
end
end
関数は次のget_elig
ようなハッシュを返します:{"foo1"=>"bar1", "foo2"=>"bar2", "foo"=>"bar"}
レールコンソールの下:
irb(main):031:0> t = MyClass.all
=> {"foo1"=>"bar1", "foo2"=>"bar2", "foo"=>"bar"}
irb(main):032:0> t.foo
NoMethodError: undefined method `foo' for #<Hash:0x105e96be0>
私の質問は単純です:私のモデルで何がうまくいかなかったのですか?
手伝ってくれてありがとう。