class Mongoid::Orderable::Generators::Scope
Public Instance Methods
generate(field_name, order_scope)
click to toggle source
# File lib/mongoid/orderable/generators/scope.rb, line 7 def generate(field_name, order_scope) criteria = criteria(order_scope) klass.class_eval do scope "orderable_#{field_name}_scope", criteria end end
Protected Instance Methods
criteria(order_scope)
click to toggle source
# File lib/mongoid/orderable/generators/scope.rb, line 16 def criteria(order_scope) case order_scope when Proc then order_scope when Array then ->(doc) { where(order_scope.each_with_object({}) {|f, h| h[f] = doc.send(f) }) } else ->(_doc) { where({}) } end end