column_scope icon indicating copy to clipboard operation
column_scope copied to clipboard

Ruby on Rails plugin based on NamedScope to select single columns without crippling your code.

= ColumnScope

Selecting only specified columns can safe you resources and processing time.

I wrote this plugin because I do this all the time and I don't want to cripple my code anymore.

ColumnScope is build on top of NamedScope so it only works with Ruby on Rails 2.1+.

== Examples:

Item.selects(:name).proxy_options[:select] # => '"items"."name"'

content = 'Foo Bar Baz'

Item.create :name => 'foo', :value => 1, :content => content Item.create :name => 'bar', :value => 2, :content => content Item.create :name => 'baz', :value => 3, :content => content

Item.selects(:name).values.all :order => 'id' # => %w[foo bar baz]

use a shortcut to retrieve values of name and content distinct

Item.select_first :distinct_name__content # => ['foo', content]

without shortcut

Item.selects(:name, :content).uniq!.values.first # => ['foo', content]

reject named columns in scope :a_named_scope and select only the values

Item.a_named_scope.rejects(:content).values.all # => [[1, 'foo', 1], ...]

See test/column_scope_test.rb for more examples.

== Install (rails):

$ script/plugin install git://github.com/boof/column_scope.git

alternativly:

$ cd vendor/plugins $ git clone git://github.com/boof/column_scope.git

Copyright (c) 2008 Florian Aßmann, released under the MIT license