Peter Gumeson
b4e2250668
Added validation callbacks to extended documents and casted models
2009-06-04 19:49:10 -07:00
Peter Gumeson
9a026997dd
valid? now recursively checks casted models. Added better validation spec coverage.
2009-05-28 12:18:23 -07:00
Matt Aimonetti
e538a3881d
strings respond to :each and the might break validation on casted arrays
2009-05-20 18:35:41 -07:00
Matt Aimonetti
2596df1a3d
added cascading validations for extended documents using casted models. Most code comes from nrstott's contribution
2009-05-13 22:50:29 -07:00
Geoff Buesing
9c46546b39
Add call to super in CouchRest::Validation.inherited hook, so that ExtendedDocument.inherited isn't bypassed. This reveals a failing test: Subclassing an ExtendedDocument should inherit default property values
2009-03-27 10:39:23 -07:00
Geoff Buesing
49d19e2a29
Validation inheritance: do deeper dup so that child classes don't add to the parent's validations
2009-03-24 23:56:41 -07:00
Matt Aimonetti
115cb6a7ee
fixed the subclassing of ExtendedDocument classes
2009-03-19 18:53:17 -07:00
Matt Aimonetti
2f8caa8740
added a new validator
2009-02-20 15:34:49 -08:00
Matt Aimonetti
e448112ff6
fixed some serious issues but left some for tomorrow (validations aren't working right)
2009-02-10 02:15:39 -08:00
Matt Aimonetti
621f5565e9
Started working on casted models, basic functionalities are now in.
...
property :casted_attribute, :cast_as => 'WithCastedModelMixin'
A casted attribute now knows about its parent. (#casted_by to retrieve the parent's object)
2009-02-09 11:20:23 -08:00
Matt Aimonetti
890b60cae4
added autovalidation (auto_validate! in your ExtendedDocument) and extracted some extlib stuff so we will soon be able to remove the dependency.
2009-02-05 17:06:12 -08:00
Matt Aimonetti
5d9e9fc53f
simplified the validation callback method.
2009-02-03 18:23:30 -08:00
Matt Aimonetti
fec21c3ff3
got rid of extlib hooking system in favor of the new Rails3 callback system. As well as fixed timestamps! in ExtendedDoc
2009-02-03 17:33:31 -08:00
Matt Aimonetti
dfdcd79a58
Started added a validation mixin
...
Usage:
class Invoice < CouchRest::ExtendedDocument
include CouchRest::Validation
property :client_name
property :employee_name
property :location
# Validation
validates_present :client_name, :employee_name
validates_present :location, :message => "Hey stupid!, you forgot the location"
end
2009-02-02 19:21:32 -08:00