Class: BankingData::Bank

Inherits:
Object
  • Object
show all
Defined in:
lib/banking_data/bank.rb

Direct Known Subclasses

AustrianBank, GermanBank, SwissBank

Class Method Summary collapse

Class Method Details

.only(*attributes) ⇒ Object



19
20
21
# File 'lib/banking_data/bank.rb', line 19

def self.only(*attributes)
  all.map { |bank| attributes.map { |attr| bank.send(attr) } }
end

.where(options = {}) ⇒ Object

goal: do something like: BankingData::Bank.where(locale: :de).only(:bic)



6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/banking_data/bank.rb', line 6

def self.where(options = {})
  locale = options.delete(:locale)
  if locale == 'DE' || locale == :de
    GermanBank.where(options)
  elsif locale == 'AT' || locale == :at
    AustrianBank.where(options)
  elsif locale == 'CH' || locale == :ch
    SwissBank.where(options)
  else
    self
  end
end