Class: Mobility::Backends::Sequel::Jsonb::QueryMethods

Inherits:
QueryMethods
  • Object
show all
Includes:
PostgresQueryMethods
Defined in:
lib/mobility/backends/sequel/jsonb/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/jsonb/query_methods.rb', line 11

def initialize(attributes, _)
  super

  define_query_methods("pg_jsonb")

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