use update_attributes rather than private update method