Commit graph

448 commits

Author SHA1 Message Date
Andrew Williams 3ad4e1e979 optimisations, and some fixes for ruby 1.8.7 2011-03-06 09:58:54 +10:30
Andrew Williams 2a9305ebd3 implemented some missing dirty functionality for casted_array and casted_hash. improved dirty spec test 2011-03-03 23:22:19 +10:30
Andrew Williams dcf43e3641 some speed optimisations. added 'use_dirty' configuration variable 2011-03-03 17:58:57 +10:30
Andrew Williams ce2e2fc9a6 some optimisations 2011-03-01 22:06:42 +10:30
Andrew Williams 270537e95f fixed comment/whitespace 2011-03-01 01:36:38 +10:30
Andrew Williams 4dbf694e51 now using ActiveModel::Dirty. only writes to database if model.changed? 2011-03-01 01:30:41 +10:30
Simone Carletti 6b66e7f23e Whitespaces. 2011-02-24 23:44:17 -03:00
Simone Carletti 608869be45 Fixed typo 2011-02-24 23:43:25 -03:00
Simone Carletti 2c24702765 Add Base#reload (closes #12)
Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2011-02-24 23:42:28 -03:00
Simone Carletti f75893b927 Fixed UniquenessValidator error
1) Validations Uniqueness should not validate a non-unique document
     Failure/Error: @obj.errors[:title].should eql(['is already taken'])

     expected ["is already taken"]
          got ["translation missing: en.activemodel.errors.models.with_unique_validation.attributes.title.taken"]

     (compared using eql?)

     Diff:
     @@ -1,2 +1,2 @@
     -["is already taken"]
     +["translation missing: en.activemodel.errors.models.with_unique_validation.attributes.title.taken"]
     # ./spec/couchrest/validations_spec.rb:28:in `block (3 levels) in <top (required)>'

Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2011-02-24 23:39:34 -03:00
Simone Carletti 44b56d3d03 Change Uniqueness validator message to follow ActiveRecord and other ORM behavior. Keeping the same message allows tools like Shoulda to work out of the box.
Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2011-02-24 23:39:05 -03:00
Simone Carletti f76517d0fa Narrow the rescued exception to avoid catching class evaluation errors that has nothing to to with the association.
Example:

    /Users/weppos/.rvm/gems/ruby-1.8.7-p330/gems/couchrest_model-1.0.0/lib/couchrest/model/associations.rb:29:in `belongs_to': Unable to convert class name into Constant for Document#dossier (RuntimeError)

although the real error is

    /Users/weppos/Projects/working/.../app/models/user.rb:56: undefined method `validates_uniqueness_of' for User:Class (NoMethodError)
2011-02-24 23:38:39 -03:00
Sam Lown 1019a44d26 Anonymous casted model properties no longer require block parameter 2011-02-05 22:38:22 +01:00
Sam Lown 1ccb96bf56 Merge branch 'errors_fix' of https://github.com/gsterndale/couchrest_model into errors_fix 2011-02-02 20:17:51 +01:00
Sam Lown d53c98252e Merge branch 'default_fix' of https://github.com/gsterndale/couchrest_model into default_fix 2011-02-02 20:11:27 +01:00
Greg Sterndale 4682e4ac5d Use :validation callbacks, not the :validate callbacks reserved by ActiveModel, ensuring callbacks are actually run when they're supposed to be. 2011-02-01 14:32:38 -05:00
Greg Sterndale 731338ed6c Do not specify options[:message] for ActiveModel::Errors#add if it's nil 2011-01-18 09:00:36 -05:00
Greg Sterndale 8d9637249c Fix deprecated ActiveModel::Errors#add options 2011-01-18 09:00:35 -05:00
Greg Sterndale b5a2307a95 Make deep clone of default property values 2011-01-18 08:13:05 -05:00
Marcos Tapajós 93cce72a2f Merge branch 'master' of https://github.com/lucasrenan/couchrest_model into bundler 2011-01-16 22:56:01 -02:00
Matt Parker cfdd3e7bfd set the CouchRest::Model::VERSION constant to the value of the VERSION file 2011-01-16 13:57:26 -05:00
Matt Parker 7f2f6c8eba version bump. 2011-01-16 13:34:56 -05:00
Lucas Renan 3a1b271558 add method 'last' to simplify queries 2010-12-31 18:59:57 -02:00
Lucas Renan 92a10dbfc9 adding rdoc to method properties_with_values 2010-12-22 23:09:00 -02:00
Sam Lown e1d140d8ae Fixing the database in view bug 2010-12-02 01:53:45 +01:00
Sam Lown 7e8bdf2855 Adding the initial workings of the view class 2010-12-02 01:42:52 +01:00
Sam Lown a2186d4c96 Merge branch 'master' of github.com:samlown/couchrest_model 2010-11-23 02:56:01 +01:00
Sam Lown 1f615ce568 Removing wierd marshalling thing 2010-11-23 02:55:29 +01:00
Sam Lown 3bd72b8a29 Modifying railtie to use couchrest_model name 2010-11-19 01:03:40 +01:00
Lucas Renan 04ad16a396 adding functionality to list properties with values 2010-11-10 22:33:46 -02:00
Sam Lown e8d7af9896 Handling cases when , used instead of . more elegantly 2010-10-23 20:59:24 +02:00
Sam Lown d0ed97ed8b Renaming Attribute Protection and solving problem modifying the provided hash to the #attributes= method 2010-10-22 15:39:12 +02:00
Sam Lown 1d1d815435 Adding support for mass_assign_any_attribute config option and refactoring non-api methods into private areas of modules 2010-09-18 15:19:15 +02:00
Sam Lown 97347e70e3 Working on adding support for allowing dynamic properties 2010-09-17 23:25:56 +02:00
Sam Lown 85cd1308bc Adding configuration support and changing 'couchrest-type' key to 'model' along with config options 2010-09-17 23:00:55 +02:00
Will Leinweber d333133319 Adds suppport for ActiveModel::Dirty and ::AttributeMethods
* ActiveModel::Dirty
** Basic support for dirty tracking
** It does not bubble up any changes to casted models currently

* ActiveModel::AttributeMethods
** Attributes are now read and written through ActiveModel
** This also allows you to add your own attribute methods with
   prefix suffix and affix names. For more information check out
   ActiveModel::AttributeMethods::ClassMethods
2010-09-16 17:30:43 -05:00
Sam Lown 5c21de8586 Fixing find(blank) issue 2010-09-05 20:06:44 +02:00
Sam Lown 31770ba571 Merge branch 'master' of github.com:couchrest/couchrest_model 2010-09-05 19:18:37 +02:00
Will Leinweber c2fde42fa6 bugfix: allow CastedArrays to be assigned
(And be a bit more general about it)
2010-09-03 12:23:53 -05:00
Sam Lown fafbfff474 Ensuring update_attributes cannot be called in CastedModel as per issue #9 2010-08-24 19:27:35 +02:00
Sam Lown c32992c21b Merge branch 'master' of git://github.com/tapajos/couchrest_model
Conflicts:
	Rakefile
	couchrest_model.gemspec
	history.txt
	lib/couchrest_model.rb
	spec/couchrest/attribute_protection_spec.rb
2010-08-24 11:45:37 +02:00
Marcos Tapajós bb667459a8 Adding model generator 2010-08-23 20:29:34 -03:00
Will Leinweber 62f4f72cab Fixes Model.new(nil) with attribute protection. GH issue #8
Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2010-08-23 20:02:08 -03:00
Will Leinweber 9437678380 refactor #read_ and #write_attribute to behave the same when called with a missing property
Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2010-08-23 20:00:19 -03:00
Will Leinweber 49c9656fe3 Allow mixing of protected and accessible properties.
Any unspecified properties are now assumed to be protected by default

Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
2010-08-23 19:59:25 -03:00
Sam Lown 51918548b1 Finalizing move to rspec 2.0.0 (rake wasn't working) 2010-08-18 20:00:03 +02:00
Sam Lown dad386d8c9 Fixing time parsing issue for times without zone 2010-08-18 19:36:01 +02:00
Will Leinweber 1a7154f5bf refactor #read_ and #write_attribute to behave the same when called with a missing property 2010-08-11 22:27:53 -05:00
Will Leinweber aac6b80d26 Allow mixing of protected and accessible properties.
Any unspecified properties are now assumed to be protected by default
2010-08-11 17:42:14 -05:00
Sam Lown ee31946e07 Merge branch 'master' of github.com:couchrest/couchrest_model into improve_associations 2010-08-11 17:36:02 +02:00