Sha256: 344d5b8062d15fbdce6c596509f74eea1385bacfe07d74af6cfe1227013a4c51
Contents?: true
Size: 747 Bytes
Versions: 1
Compression:
Stored size: 747 Bytes
Contents
module GreyscaleRecord module Queriable extend ActiveSupport::Concern included do class << self def find(id) records = where( id: id.to_s ) raise Errors::RecordNotFound, "#{ self }: Record not found: #{ id }" if records.empty? records.first end def find_by( params = { } ) results = where params raise Errors::RecordNotFound, "#{ self }: Could not find record that matches: #{ params.inspect }" if results.empty? results.first end def all where end def first all.first end def where( params = {} ) Relation.new self, params end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
greyscale_record-1.0.0 | lib/greyscale_record/queriable.rb |