Class: RademadeAdmin::Model::Adapter::Data

Inherits:
Object
  • Object
show all
Defined in:
lib/rademade_admin/model/adapter/data.rb,
lib/rademade_admin/model/adapter/data/mongoid.rb,
lib/rademade_admin/model/adapter/data/active_record.rb

Direct Known Subclasses

ActiveRecord, Mongoid

Defined Under Namespace

Classes: ActiveRecord, Mongoid

Instance Method Summary collapse

Constructor Details

#initialize(model) ⇒ Data

Initialization method



10
11
12
# File 'lib/rademade_admin/model/adapter/data.rb', line 10

def initialize(model)
  @model = model
end

Instance Method Details

#association_fieldsArray

Returns array of relations keys

Returns:

  • (Array)


43
44
45
# File 'lib/rademade_admin/model/adapter/data.rb', line 43

def association_fields
  relations.keys.map &:to_sym
end

#columnsObject



56
57
58
# File 'lib/rademade_admin/model/adapter/data.rb', line 56

def columns
  @columns ||= _model_fields
end

#field(name) ⇒ RademadeAdmin::Model::Info::Field



63
64
65
# File 'lib/rademade_admin/model/adapter/data.rb', line 63

def field(name)
  fields[name.to_sym]
end

#fieldsArray

Returns array of fields with class [RademadeAdmin::Model::Info::Field]

Returns:

  • (Array)


52
53
54
# File 'lib/rademade_admin/model/adapter/data.rb', line 52

def fields
  @fields ||= _map_fields
end

#has_manyArray

Returns:

  • (Array)


70
71
72
# File 'lib/rademade_admin/model/adapter/data.rb', line 70

def has_many
  @has_many_relations ||= relations.filter { |rel| has_many_relations.include?(rel.type) }
end

#has_oneArray

Returns:

  • (Array)


77
78
79
# File 'lib/rademade_admin/model/adapter/data.rb', line 77

def has_one
  @has_one_relations ||= relations.filter { |rel| has_one_relations.include?(rel.type) }
end

#has_relation?(name) ⇒ Bool

Returns:

  • (Bool)


26
27
28
# File 'lib/rademade_admin/model/adapter/data.rb', line 26

def has_relation?(name)
  not relation(name).nil?
end

#relation(name) ⇒ RademadeAdmin::Model::Info::Relation



34
35
36
# File 'lib/rademade_admin/model/adapter/data.rb', line 34

def relation(name)
  relations[name.to_sym]
end

#relationsArray

Return array of RademadeAdmin::Model::Info::Relation

Returns:

  • (Array)


19
20
21
# File 'lib/rademade_admin/model/adapter/data.rb', line 19

def relations
  @relations ||= _map_relations
end

#uploader(name) ⇒ Object



85
86
87
# File 'lib/rademade_admin/model/adapter/data.rb', line 85

def uploader(name)
  uploaders[name.to_sym]
end

#uploadersObject



81
82
83
# File 'lib/rademade_admin/model/adapter/data.rb', line 81

def uploaders
  @uploaders ||= _map_uploaders
end