Class: Mobility::Backends::Sequel::Hstore::QueryMethods

Inherits:
QueryMethods
  • Object
show all
Includes:
PostgresQueryMethods
Defined in:
lib/mobility/backends/sequel/hstore/query_methods.rb

Instance Method Summary collapse

Constructor Details

#initialize(attributes, _) ⇒ QueryMethods

Returns a new instance of QueryMethods.



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/mobility/backends/sequel/hstore/query_methods.rb', line 11

def initialize(attributes, _)
  super

  define_query_methods("hstore")

  attributes.each do |attribute|
    define_method :"first_by_#{attribute}" do |value|
      where(::Sequel.hstore(attribute.to_sym).contains(::Sequel.hstore({ Mobility.locale.to_s => value }))).
        select_all(model.table_name).first
    end
  end
end