On Apr 1, 6:50 am, Michael Pavling <[email protected]> wrote: > On 1 April 2011 01:22, Bryan Crossland <[email protected]> wrote: > > > Someone else might know more as to why "save" returns true in this case. If > > not, then it is most likely a bug. > > Try it in your SQL console of choice: > > UPDATE my_table SET field1 = 'new value' WHERE id = <non-existant-id-value> > > You'll get a message "no records were updated" - that's a successful > execution as far as SQL is concerned.
Although you might expect rails to check the numbers of rows modified (as it does when optimistic locking is enabled) - Select * from foo where id ='non existant' will also execute just fine but rails chooses to make Foo.find(id) raise an exception in those cases Fred -- 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.

