class Horza::Adapters::Options
Constants
- META_METHODS
Public Class Methods
new(options)
click to toggle source
# File lib/horza/adapters/options.rb, line 6 def initialize(options) @options = options end
Public Instance Methods
eager_args()
click to toggle source
# File lib/horza/adapters/options.rb, line 31 def eager_args raise ::Horza::Errors::InvalidOption.new('You must pass eager_load: true and defined a target') unless eager_load? && target return target unless via && via.present? via.reverse.reduce({}) do |hash, table| if hash.empty? hash.merge(table => target) else { table => hash } end end end
eager_load?()
click to toggle source
# File lib/horza/adapters/options.rb, line 27 def eager_load? !!@options[:eager_load] end
method_missing(method)
click to toggle source
Calls superclass method
# File lib/horza/adapters/options.rb, line 10 def method_missing(method) super unless META_METHODS.include? method @options[method] end
order_direction()
click to toggle source
# File lib/horza/adapters/options.rb, line 20 def order_direction return :desc unless order.present? raise ::Horza::Errors::InvalidOption.new('Order must be :asc or :desc') unless [:asc, :desc].include?(@options[:order][order_field]) order[order_field] end
order_field()
click to toggle source
# File lib/horza/adapters/options.rb, line 15 def order_field return :id unless order.present? @options[:order].keys.first end