Class: RademadeAdmin::Model::DataAdapter::ActiveRecord
Instance Method Summary
collapse
#has_many, #has_one, #initialize
Instance Method Details
#association_foreign_key(relation) ⇒ Object
15
16
17
18
19
20
21
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 15
def association_foreign_key(relation)
assoc_key = relation.association_foreign_key
if relation.collection?
assoc_key += 's'
end
assoc_key
end
|
#fields ⇒ Object
23
24
25
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 23
def fields
@model.column_types
end
|
#foreign_key?(field) ⇒ Boolean
31
32
33
34
35
36
37
38
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 31
def foreign_key?(field)
if field.is_a? ::ActiveRecord::AttributeMethods::TimeZoneConversion::Type field_name = field.instance_values['column'].name
else
field_name = field.name
end
field_name[-3, 3] == '_id'
end
|
#has_field?(field) ⇒ Boolean
27
28
29
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 27
def has_field?(field)
fields.include? field
end
|
#reflect_on_association(name) ⇒ Object
11
12
13
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 11
def reflect_on_association(name)
@model.reflect_on_association(name)
end
|
#relations ⇒ Object
7
8
9
|
# File 'lib/rademade_admin/model/data_adapter/active_record.rb', line 7
def relations
@model.reflections
end
|