Sha256: e042ceae80aacd10e0ee4ca86a4b790783d5fdfe6d41e4274a075bd6259dcb92

Contents?: true

Size: 692 Bytes

Versions: 2

Compression:

Stored size: 692 Bytes

Contents

module Admino
  module Query
    module Dsl
      def config
        @config ||= Admino::Query::Configuration.new
      end

      def field(name, options = {})
        config.add_field(name, options)

        define_method name do
          field_by_name(name).value
        end
      end

      def group(name, scopes)
        config.add_group(name, scopes)
      end

      def sorting(*args)
        options = args.extract_options!
        config.add_sorting_scopes(args, options)
      end

      def starting_scope(&block)
        config.starting_scope_callable = block
      end

      def ending_scope(&block)
        config.ending_scope_callable = block
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
admino-0.0.3 lib/admino/query/dsl.rb
admino-0.0.2 lib/admino/query/dsl.rb