Update_attribute and validations


#1

Just in case it saves someone else the several hours of insanity I just
went through, update_attributes will not save unless the model
validations are satisfied, but update_attribute (the singular form)
will save the attribute to the database even if the model validations
would fail!

This appears to be a feature, not a bug
(http://api.rubyonrails.com/classes/ActiveRecord/Base.html) although it
is not mentioned in Agile Web Dev with Rails (page 221).

Regards,
Victor G.


#2

Wow, that is odd, you would think it would work the same as
update_attributes. Or it least there would be a
update_attribute(name,value,validate) where validate is a boolean.


#3

On 1/17/06, Paul B. removed_email_address@domain.invalid wrote:

Wow, that is odd, you would think it would work the same as
update_attributes. Or it least there would be a
update_attribute(name,value,validate) where validate is a
boolean.

It was made specifically for updating things such as boolean fields.
If you want to update more fields without validation, you can do this:

@foo.attributes = params[:foo]
@foo.save(false)


rick
http://techno-weenie.net