Sha256: b7cfb4e0062a51e9c5d7355d76c4cd284c5692dc3998f5702edd6f5f86daeeea
Contents?: true
Size: 606 Bytes
Versions: 3
Compression:
Stored size: 606 Bytes
Contents
module GreyscaleRecord class Relation delegate :present?, :empty?, :==, to: :all def initialize( base, params ) @base = base @params = params.dup.merge!( _table: @base.name ) end def where( params ) self.class.new @base, @params.merge( params ) end def and( params ) self.class.new @base, @params.merge( params ) end def all @all ||= @base.data_store.find( @params.dup ).map do | result | @base.new result end end def method_missing( method, *args, &block ) all.send method, *args, &block end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
greyscale_record-1.0.2 | lib/greyscale_record/relation.rb |
greyscale_record-1.0.1 | lib/greyscale_record/relation.rb |
greyscale_record-1.0.0 | lib/greyscale_record/relation.rb |