method

save

save()
public

Saves the model.

If the model is new a record gets created in the database, otherwise the existing record gets updated.

If perform_validation is true validations run. If any of them fail the action is cancelled and save returns false. If the flag is false validations are bypassed altogether. See <a href="/rails/ActiveRecord/Validations">ActiveRecord::Validations</a> for more information.

There’s a series of callbacks associated with save. If any of the before_* callbacks return false the action is cancelled and save returns false. See <a href="/rails/ActiveRecord/Callbacks">ActiveRecord::Callbacks</a> for further details.

2Notes

database exceptions will still be raised

ColinDKelley · Jun 4, 20102 thanks

Note that save() only returns false on validation errors (when valid? returns false). If other errors occur at the database level, like a database deadlock or trying to insert null into a column that doesn't allow it, that will still raise an exception.

Skip validations

linjunpop · Sep 28, 20122 thanks

. user.save(false)

will skip validations