Метод атрибутов возвращает хэш всех атрибутов с их именами в качестве ключей и значениями атрибутов в качестве значений;Я хочу использовать этот метод, создавая новую производную метода update_attributes (attribute), назовем его jz_attributes (attribute).
Update_attributes делает это:
def update_attributes(attributes)
self.attributes = attributes
save
end
И jz_attributes (атрибуты)) сделает что-то немного другое:
def jz_attributes(attributes)
debugger
self.attributes = attributes
#does something else
end
Я хочу полностью использовать метод ActiveRecords атрибуты , но у меня возникли проблемы:
def attributes
self.attribute_names.inject({}) do |attrs, name|
attrs[name] = read_attribute(name)
attrs
end
end
Воткакой терминал говорит:
28 end
29 end
30
31 def jz_attributes(attributes)
32 debugger
=> 33 self.attributes = attributes
34 end
35
36
37 #inventory_to_increment.quantity = quantity.to_i
(rdb:1) p attributes
nil
(rdb:1) next
/Users/justinz/.gem/ruby/1.8/gems/actionpack-2.3.5/lib/action_controller/rescue.rb:162
rescue_action(exception)
Мой контроллер, использующий атрибуты jz_attributes:
def cart2_update
@cart = find_cart
@cart.jz_attributes(params[:cart_item])
end
Видите ли вы что-нибудь очевидное, что я делаю неправильно? Спасибо !