Commit graph

105 commits

Author SHA1 Message Date
Will Leinweber
b5d09afef5 Adds attribute protection to properties
Public Facing
   * through either :protected or :accessible8 flags
   * prevents protected attributes from being set in mass assignment
 Developer Facing
   * refactors #initialize and #update_attribute_without_saving
       to use same private methods to set attributes on ExtendedDocument
   * adds new mixin to do protection

Signed-off-by: Tapajós <tapajos@gmail.com>
2009-10-31 09:56:58 -02:00
Tapajós
2f2c507582 Merge remote branch 'tapajos/master'
Conflicts:
	README.md
	lib/couchrest/mixins/properties.rb
	spec/couchrest/core/database_spec.rb
	spec/couchrest/more/extended_doc_spec.rb
2009-09-20 22:52:39 -03:00
Tapajós
3c2ebb022d Merge remote branch 'remotes/old/master'
Conflicts:
	README.md
	couchrest.gemspec
	lib/couchrest.rb
	lib/couchrest/mixins/properties.rb
2009-09-03 23:10:06 -03:00
Tapajós
bc6df2f5ca Adding support to :cast_as => 'Date'. 2009-09-02 23:55:55 -03:00
Matt Aimonetti
64a51b73ae merged Peter's stuff 2009-08-24 16:57:58 -07:00
John Wood
feb09f9764 Removed amount_pages calculation for the pagination collection, since it cannot be reliably calculated without a view 2009-08-20 12:29:02 -07:00
John Wood
b0dca70b02 Fixed a bug in the pagination code that caused it to paginate over records outside of the scope of the view parameters. 2009-08-20 12:28:28 -07:00
Peter Gumeson
1938270d65 Merge commit 'mattetti/master' 2009-08-12 16:48:13 -07:00
Chris Anderson
212bc79f3e fix content_type handling for attachments 2009-08-06 13:04:17 -07:00
Matt Aimonetti
889a923dbf Added #amount_pages to a paginated result array 2009-08-03 12:19:07 -07:00
John Wood
d1d8da513c Added code to generate a property? method for properties casted as :boolean
Signed-off-by: Matt Aimonetti <mattaimonetti@gmail.com>
2009-07-31 08:23:45 +08:00
Matt Aimonetti
5270fde0fa added an option to force the deletion of a attachment 2009-07-29 20:12:35 -07:00
tc
41eeedd49b removed {:reduce => false} in #all method to make it 0.10 comp. 2009-07-26 23:33:15 -07:00
Matt Aimonetti
5cd2eaf18a made get not raise an exception anymore, use get! instead if you need to raise exceptions.
* ExtendedDocument.get doesn't raise an exception anymore. If no documents are found nil is returned.
* ExtendedDocument.get! works the say #get used to work and will raise an exception if a document isn't found.
2009-07-22 16:05:55 -07:00
Matt Aimonetti
87d246d30e modified the 'all' view to emit doc ids so we can do Model.all(:keys => [1,2]) 2009-07-22 15:45:18 -07:00
Daniel Kirsch
4d4972f0de fixed class proxy design doc wreidness 2009-07-21 23:38:00 +02:00
Daniel Kirsch
3ee810010d forgot to add database to count query 2009-07-21 14:36:09 +02:00
Daniel Kirsch
be7cd7442b added count to proxy 2009-07-21 14:14:58 +02:00
Peter Gumeson
d85155040a Merge commit 'mattetti/master' 2009-07-20 16:21:10 -07:00
Matt Aimonetti
413a7602e8 added amount_pages to a paginated collection 2009-07-20 15:52:14 -07:00
Peter Gumeson
e87c543b0f reunited some __FILE__, __LINE__ with their + 1 2009-07-19 01:23:51 -07:00
Peter Gumeson
1e44302d1a Merge commit 'mattetti/master' 2009-07-19 00:01:07 -07:00
Peter Gumeson
7bae8acc36 Merge branch 'new_callbacks' 2009-07-18 23:37:16 -07:00
Arnaud Berthomier
142989a80d Dont die on empty results
Signed-off-by: Matt Aimonetti <mattaimonetti@gmail.com>
2009-07-18 01:44:42 +08:00
Matt Aimonetti
964526193b Optimized Model.count to run about 3x faster 2009-07-16 20:38:15 -07:00
Matt Aimonetti
8f8b5dc568 added support to cast Float values 2009-07-16 19:52:53 -07:00
Matt Aimonetti
9a167cc27d fixed the specs 2009-07-14 23:48:06 -07:00
Matt Aimonetti
b2a29d9eb7 started extracting the http layer 2009-07-14 01:43:40 -07:00
John Wood
42482a626a Changed pagination technique used by Collection
Modified Collection to use the pagination technique described at
http://wiki.apache.org/couchdb/How_to_page_through_results where possible.
2009-07-08 09:45:08 -07:00
John Wood
a0d6204b42 Added some more doc for Collection, and cleaned up how provides_collection works. 2009-07-08 09:43:31 -07:00
John Wood
a9a53b8729 Added more tests for Collection module, cleaned up the code as well. 2009-07-08 09:40:47 -07:00
John Wood
5963f1d4f8 Better integration with couchrest views. More tests, doc, and some cleanup still needed. 2009-07-08 09:39:30 -07:00
John Wood
cf76466795 Added Collection mixin.
The Collection mixin adds support for executing a view, and passing
back the view results as an Array of the given ExtendedDocument instance.
It also supports will_paginate like pagination methods (paginate, paginated_each),
which will only fetch the given set of documents from CouchDB.
2009-07-08 09:38:26 -07:00
Matt Aimonetti
9a89db44f1 fixed a commit that got reverted by accident 2009-07-08 09:28:15 -07:00
Matt Aimonetti
82090cb780 modified the timestamp parsing to run faster, making a big difference when loading huge datasets 2009-07-07 23:55:20 -07:00
Peter Gumeson
ce02d05eac Merge commit 'mattetti/master' 2009-06-20 21:05:00 -07:00
wildchild
f9d8f09ab9 Handle default values properly 2009-06-18 15:00:13 -07:00
Peter Gumeson
f4f3946d86 Merged in more new callback stuff from rails 3 2009-06-13 22:41:16 -07:00
Peter Gumeson
62e8709df7 Fixed some casting issues for assigned properties 2009-06-12 12:22:58 -07:00
Seth Ladd
92d7fdb94d refactoring how casting works 2009-06-09 18:02:04 -10:00
Seth Ladd
209e36f61b cast values through setters to ensure validations are run after mass assignment, for example 2009-06-08 16:35:26 -10:00
Seth Ladd
7246801f57 merged in sporkd 2009-06-08 10:10:59 -10:00
Matt Aimonetti
c18567f8fc differentiated attachment's URI and URL 2009-06-07 18:51:31 -07:00
Peter Gumeson
db7829e996 Callbacks now take multiple callback methods 2009-06-07 18:46:30 -07:00
Peter Gumeson
ab362cb32c More convenient callback alias methods 2009-06-07 17:01:21 -07:00
Peter Gumeson
806a79a72a Enabled callback halting and added copyright notices 2009-06-07 14:52:23 -07:00
Peter Gumeson
dc4787e905 Integrated Yehuda's new callback code from rails 2009-06-07 02:57:22 -07:00
Peter Gumeson
76b1563539 Renamed new_document? and new_model? to simply new? 2009-06-04 20:44:44 -07:00
Peter Gumeson
b4e2250668 Added validation callbacks to extended documents and casted models 2009-06-04 19:49:10 -07:00
Peter Gumeson
efeb654114 casted_by is now set on assignment to a document. 2009-05-28 17:56:42 -07:00