public
Rubygem
Description: Extras for DataMapper, including bridges to DataObjects::Migrations and Merb::DataMapper
Homepage: http://datamapper.org
Clone URL: git://github.com/sam/dm-more.git
Search Repo:
dm-more / dm-querizer
name age message
..
folder History.txt Fri Jul 18 12:02:56 -0700 2008 Adding hoe to dm-observer, dm-querizer, dm-seri... [Bernerd Schaefer]
folder LICENSE Thu Jun 19 05:06:00 -0700 2008 making querizer ready for experimental release [somebee]
folder Manifest.txt Fri Jul 18 12:02:56 -0700 2008 Adding hoe to dm-observer, dm-querizer, dm-seri... [Bernerd Schaefer]
folder README.txt Fri Jul 18 12:02:56 -0700 2008 Adding hoe to dm-observer, dm-querizer, dm-seri... [Bernerd Schaefer]
folder Rakefile Thu Jul 24 14:00:08 -0700 2008 Updated dm-more to release to datamapper, added... [bernerdschaefer]
folder TODO Thu Jun 19 05:06:00 -0700 2008 added dm-querizer for an alternative (more ruby... [somebee]
folder lib/ Tue Aug 26 15:25:51 -0700 2008 Version Bump to 0.9.6. [bernerdschaefer]
folder spec/ Tue Aug 26 15:25:51 -0700 2008 Version Bump to 0.9.6. [bernerdschaefer]
README.txt
= dm-querizer

DataMapper plugin that provides a short rubyish query-syntax.

When this plugin is loaded you can supply blocks to #all and #first. Ordinary hashes
still work, so you do not lose any functionality.

Old: User.all( :name => 'john', :age.gt => 20 )
New: User.all{ name == 'john' && age > 20 }

Old: User.all( :age.gte => 35, :name.like => 'mark%' )
New: User.all{ age >= 35 && name =~ 'mark%' }

You can also use ';' instead of '&&' for even shorter queries.

User.all{ name == 'john' && age > 20 }
User.all{ name == 'john'; age > 20 }

The plugin is still very much experimental. != is not working (and might never work).
Instead you can use '~';

Old: User.all( :name.not => 'mark' )
New: User.all{ name ~ 'mark' }