
save! is inconsistent with the behavior of create!
Reported by Oliver Legg | July 1st, 2008 @ 10:06 AM
My expectation for save! would be that it would save the record and raise a PersistenceError if the record was not saved. Instead it saves the record without validations, nearly the exact opposite of what I would expect.
This is inconsistent with the save! method in dm-core which does raise a PersistenceError - (it is also inconsistent with ActiveRecord, but that isn't much of a concern).
Comments and changes to this ticket
-
Dan Kubb (dkubb) July 9th, 2008 @ 11:17 PM
- State changed from new to open
Oliver, the convention that Sam has decided upon for DataMapper is that all persistence methods ending in "!" should bypass validations.
Model#create! is the only method that doesn't match this convention, and it should be fixed.
-
Bernerd Schaefer July 23rd, 2008 @ 11:28 AM
- State changed from open to resolved
Okay. Model#create! now warns that it is deprecated. All uses of create! in the specs have been removed.
And now dm-validations over-writes Model#create and Model#create! to execute validated and non-validated creates.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »