Module: ErpTechSvcs::Extensions::ActiveRecord::ScopedBy::SingletonMethods

Defined in:
lib/erp_tech_svcs/extensions/active_record/scoped_by.rb

Instance Method Summary collapse

Instance Method Details

#scoped_by(scope_name, scope_value) ⇒ Object



34
35
36
37
38
39
40
41
# File 'lib/erp_tech_svcs/extensions/active_record/scoped_by.rb', line 34

def scoped_by(scope_name, scope_value)
  if ::ActiveRecord::Base.connection.instance_values["config"][:adapter] == 'postgresql'
    where("(scoped_by @> '\"#{scope_name}\"=>\"#{scope_value}\"'::hstore )")
  else
    where(arel_table[:scoped_by].matches("%\"#{scope_name}\":\"#{scope_value}\"%")
          .or(arel_table[:scoped_by].matches("%\"#{scope_name}\":#{scope_value}%")))
  end
end