Module: ActiveExt::ExtHelpers::DataHelper

Defined in:
lib/active_ext/ext_helpers/data_helper.rb

Class Method Summary collapse

Class Method Details

.build_json_data(core, options = {}) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/active_ext/ext_helpers/data_helper.rb', line 5

def self.build_json_data(core, options={})
  result = {:total => 0, :data => []}
  klass = get_klass(core.model)
    
  klass.include_root_in_json = false
  
  records = klass.all(options)
  result[:total] = klass.count
  result[:data] = records
    
  result.to_json(:include => core.association_names)
end

.create_record(core, options = {}) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/active_ext/ext_helpers/data_helper.rb', line 18

def self.create_record(core, options={})
  ignored_columns = %w{id created_at updated_at}
    
  klass = get_klass(core.model)
    
  options[:data].delete_if{|k,v| k.blank? || ignored_columns.include?(k)}
  obj = klass.create
  options[:data].each do |k,v|
    obj.send("#{k.to_s}=", v)
  end
  obj.save
    
  result = {:success => true, :data => []}
  result[:data] = obj
    
  result.to_json
end

.delete_record(core, options = {}) ⇒ Object



50
51
52
53
54
55
56
57
# File 'lib/active_ext/ext_helpers/data_helper.rb', line 50

def self.delete_record(core, options={})
  klass = get_klass(core.model)
    
  klass.destroy(options[:id])
    
  result = {:success => true, :data => []}
  result.to_json
end

.update_record(core, options = {}) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/active_ext/ext_helpers/data_helper.rb', line 36

def self.update_record(core, options={})
  klass = get_klass(core.model)
  
  obj = klass.find(options[:id])
  options[:data].each do |k,v|
    obj.send("#{k.to_s}=", v)
  end
  obj.save
    
  result = {:success => true, :data => []}
  result[:data] = obj
  result.to_json
end