This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 641c200ec70e1caf7b16124d8d04b79eefb58a23
tree 9f115c3d678088f691960df9f548e4f1c26c014c
parent a66d887956a08405c52868dc3d79b1db3628a39a
tree 9f115c3d678088f691960df9f548e4f1c26c014c
parent a66d887956a08405c52868dc3d79b1db3628a39a
| name | age | message | |
|---|---|---|---|
| |
MIT-LICENSE | ||
| |
README | ||
| |
Rakefile | ||
| |
about.yml | ||
| |
init.rb | ||
| |
install.rb | ||
| |
lib/ | ||
| |
tasks/ | ||
| |
test/ | ||
| |
uninstall.rb |
README
ActsAsResource
==============
ActsAsResource combines ActiveRecord and ActiveResource features in *one* class.
Example
=======
class Carrot
acts_as_resource
self.site = 'http://localhost:3000'
belongs_to :bunny
validates_presence_of :color
validates_uniqueness_of :color
validates_length_of :color, :within => 2..23,
:if => lambda { |c| c.color && !c.color.empty? }
validates_format_of :color,
:with => /[\w\s]+$/,
:if => lambda { |c| c.color && !c.color.empty? }
before_create :please_call_me_before_create
def self.validate
logger.debug("VALIDATE #{color}")
end
def please_call_me_before_create
logger.debug("Ohhh, so you called me..")
end
end
Usage
=====
For convention each operation is *local* unless specified with :remote flag.
carrot = Carrot.find(23) # => local request
carrot = Carrot.find(23, :remote => false) # => local request
carrot = Carrot.find(23, :remote => true) # => remote request
Carrot.create(:color => 'orange') # => create local
Carrot.create(:color => 'orange', :remote => true) # => create remote
Prerequisites
=============
For 2.0 railists: no problem guys!
For old 1.2.x people you should live in the edge, cause ActiveResource is needed.
Install
=======
Rails 2.1.x
$ ./script/plugin install git://github.com/jodosha/acts-as-resource.git
Rails <= 2.0.x
$ ./script/plugin install http://dev.23labs.net/svn/rails/plugins/acts_as_resource
Uninstall
=========
$ ./script/plugin remove acts_as_resource
Common Issues
=============
* Actually ActsAsResource doesn't support Single Table Inheritance.
* Sometimes, when class relations are used, ActiveRecord generates a warning
like:
warning: toplevel constant Bunny referenced by Carrot::Bunny
Contribute
==========
* Check out the code and test it:
$ git clone git://github.com/jodosha/acts-as-resource.git
$ rake resource
* Create a ticket to: http://dev.23labs.net/rails/trac.cgi
* Create a patch and add as attachement to the ticket.
* The SVN repo has been deprecated in favor of the Git one.
Copyright (c) 2007-2008 Luca Guidi - http://lucaguidi.com, released under the MIT license







