{"name":"ScopedProxy","downloads":5153,"version":"1.0.0","version_created_at":"2009-07-25T18:36:46.000Z","version_downloads":5152,"platform":"ruby","authors":"Kaspar Schiess","info":"== SYNOPSIS:  Allows storing scopes as names; that way you can address subsets of your model space by meaningful names.    require 'scoped_proxy'    # Railsers: You might want to call this in environment.rb   class User &lt; ActiveRecord::Base scoped_proxy :role do |role| { :find =&gt; { :conditions =&gt; ['role = ?', role] } } end scoped_proxy :deleted, :find =&gt; { :conditions =&gt; 'deleted_at is not null' } end  admins = User.role('admin') admins.count              # =&gt; 12 admins.find(:all)         # =&gt; [ ... ]  User.deleted.count        # =&gt; a number  This implementation also brings (NEW, SHINY) default proxies. That means you can have a proxy in effect when no other proxy is in effect.    class User &lt; ActiveRecord::Base default_proxy :find =&gt; { :conditions =&gt; 'deleted_at is null' } end  User.find(:all)   # only finds users that aren't deleted","licenses":null,"metadata":{"homepage_uri":"http://rubyforge.org/projects/swissrb"},"yanked":false,"sha":"bab771dcd35d1bdf65d54eab39c628cce3a23df5b1a4311d4965389a7d3c1dff","spec_sha":"87aa92260bdb25beadbb2fd18724cfb22aa9dfadb9d886b5c44aabec9fb7dbd7","project_uri":"https://rubygems.org/gems/ScopedProxy","gem_uri":"https://rubygems.org/gems/ScopedProxy-1.0.0.gem","homepage_uri":"http://rubyforge.org/projects/swissrb","wiki_uri":null,"documentation_uri":null,"mailing_list_uri":null,"source_code_uri":null,"bug_tracker_uri":null,"changelog_uri":null,"funding_uri":null,"dependencies":{"development":[],"runtime":[{"name":"hoe","requirements":">= 1.3.0"}]}}