Class: TaskHelper::Record

Inherits:
Base
  • Object
show all
Defined in:
lib/task_helper/record.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#==, #created_at, #id, #to_h, #updated_at

Constructor Details

#initialize(args = {}, form: nil, **params) ⇒ Record

Returns a new instance of Record.



11
12
13
14
# File 'lib/task_helper/record.rb', line 11

def initialize(args = {}, form: nil, **params)
  @form = form
  super(args.merge(params))
end

Class Method Details

.find(id, database_id:) ⇒ Object



5
6
7
8
9
# File 'lib/task_helper/record.rb', line 5

def self.find(id, database_id:)
  if response = get(route: "apps/#{database_id}/dtypes/#{id}.json")
    new response['record'] if response['record']
  end
end

Instance Method Details

#[](field_name) ⇒ Object



24
25
26
# File 'lib/task_helper/record.rb', line 24

def [](field_name)
  pretty_values[field_name]
end

#fieldsObject



20
21
22
# File 'lib/task_helper/record.rb', line 20

def fields
  form.fields
end

#formObject



16
17
18
# File 'lib/task_helper/record.rb', line 16

def form
  @form ||= Form.find(database: app_id, form: entity_id)
end

#pretty_valuesObject



28
29
30
31
32
33
# File 'lib/task_helper/record.rb', line 28

def pretty_values
  @pretty_values ||= values.each_with_object({}) do |(k,v), r|
    field = fields.find { |f| f.id == k }
    r[field.name] = v
  end
end