Hi,
Why does ActiveRecord allow perception of success when updating an ID,
however it doesn't really work(i.e. no change in database)?

Here's an example. The update of "id" versus update of a non-existent
attribute.

?> ai = AccountItem.find(:first) => #<AccountItem id: 1, account_id: 1,
date: "2009-01-11", amount: #<BigDecimal:22fb334,'0.1E2',4(8)>, balance:
#<BigDecimal:22fb1f4,'0.0',4(8)>, description: "test", notes: nil,
created_at: "2009-01-11 09:47:28", updated_at: "2009-01-11 09:47:28"> >>
ai.update_attributes!(:id => 99999) => true # SEEMS TO INDICATE IT WORKED >>
AccountItem.find(:all) => [#<AccountItem id: 1, account_id: 1, date:
"2009-01-11", amount: #<BigDecimal:22f27c0,'0.1E2',4(8)>, balance:
#<BigDecimal:22f2680,'0.0',4(8)>, description: "test", notes: nil,
created_at: "2009-01-11 09:47:28", updated_at: "2009-01-11 09:47:28">] # IT
DIDN'T AS THE ID IS STILL 1 >>
?> ai.update_attributes!(:XXXX => 99999) NoMethodError: undefined method
`XXXX=' for #<AccountItem:0x22fc6a8> <== THIS IS A BIT MORE LIKE YOU WOULD
EXPECT from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/attribute_methods.rb:251:in
`method_missing' from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/base.rb:2372:in
`send' from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/base.rb:2372:in
`attributes=' from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/base.rb:2371:in
`each' from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/base.rb:2371:in
`attributes=' from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/base.rb:2278:in
`update_attributes!' from (irb):60 >>

thanks

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to