Я пытаюсь инициализировать переменную класса как хеш, когда создаю экземпляр SomeClass, но продолжаю получать сообщение об ошибке. Немного нового в рубине, поэтому любая помощь будет оценена. Спасибо
class SomeClass < ActiveRecord::Base
attr_accessible :some_hash
serialize :some_hash, Hash
def initialize(args = {})
@some_hash != {}
end
end
NoMethodError: неопределенный метод has_key?' for nil:NilClass
from /opt/local/lib/ruby/gems/1.8/gems/activesupport-2.3.8/lib/active_support/whiny_nil.rb:52:in
method_missing '
из /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:2827:in has_attribute?'<br>
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:2888:in
проверять
из /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:2887:in collect'<br>
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:2887:in
проверять
из /opt/local/lib/ruby/1.8/irb.rb:310:in output_value'<br>
from /opt/local/lib/ruby/1.8/irb.rb:159:in
eval_input '
из /opt/local/lib/ruby/1.8/irb.rb:271:in signal_status'<br>
from /opt/local/lib/ruby/1.8/irb.rb:155:in
eval_input '
из /opt/local/lib/ruby/1.8/irb.rb:154:in eval_input'<br>
from /opt/local/lib/ruby/1.8/irb.rb:71:in
start '
из /opt/local/lib/ruby/1.8/irb.rb:70:in catch'<br>
from /opt/local/lib/ruby/1.8/irb.rb:70:in
start '
из / opt / local / bin / irb: 13