Class: RademadeAdmin::Model::DataAdapter::Mongoid

Inherits:
Object
  • Object
show all
Includes:
RademadeAdmin::Model::DataAdapter
Defined in:
lib/rademade_admin/model/data_adapter/mongoid.rb

Instance Method Summary collapse

Methods included from RademadeAdmin::Model::DataAdapter

#has_many, #has_one, #initialize

Instance Method Details

#association_foreign_key(relation) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 20

def association_foreign_key(relation)
  rel_name = relation.name.to_s
  if relation.many?
    rel_name.singularize.foreign_key + 's'
  else
    rel_name.foreign_key
  end
end

#fieldsObject



29
30
31
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 29

def fields
  @model.fields
end

#foreign_key?(field) ⇒ Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 37

def foreign_key?(field)
  field.foreign_key?
end

#has_field?(field) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 33

def has_field?(field)
  fields.keys.include? field
end

#many_relation?(field) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 16

def many_relation?(field)
  reflect_on_association(field).try(:many?)
end

#reflect_on_association(name) ⇒ Object



12
13
14
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 12

def reflect_on_association(name)
  @model.reflect_on_association(name)
end

#relationsObject



8
9
10
# File 'lib/rademade_admin/model/data_adapter/mongoid.rb', line 8

def relations
  @model.relations
end