module NullObjectModels::Extension::ClassMethods
Public Instance Methods
find_or_null(id_or_ids, klass = nil)
click to toggle source
# File lib/null_object_models/extension.rb, line 6 def find_or_null(id_or_ids, klass = nil) klass ||= null_model if id_or_ids.is_a?(Array) found_collection = where(id: id_or_ids) id_or_ids.map do |id| found_collection.detect { |found| found.id == id } || klass.new(id, self) end else find_by_id(id_or_ids) || klass.new(id_or_ids, self) end end
null_model()
click to toggle source
# File lib/null_object_models/extension.rb, line 20 def null_model ('Null' + self.name).constantize rescue NullObjectModels::Default end