Я работаю над приложением rails3, и я немного запутался в Active Model.
Вот моя модель:
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>
Мой вопрос прост: что не так с моей моделью?
Спасибо за помощь.