class DynamicActiveModel::ForeignKey
DynamicActiveModel::ForeignKey
tracks foreign keys related to the model
Constants
- DEFAULT_ID_SUFFIX
Attributes
keys[R]
model[R]
Public Class Methods
id_suffix()
click to toggle source
# File lib/dynamic-active-model/foreign_key.rb, line 11 def self.id_suffix @id_suffix || DEFAULT_ID_SUFFIX end
id_suffix=(val)
click to toggle source
rubocop:disable Style/TrivialAccessors
# File lib/dynamic-active-model/foreign_key.rb, line 16 def self.id_suffix=(val) @id_suffix = val end
new(model)
click to toggle source
rubocop:enable Style/TrivialAccessors
# File lib/dynamic-active-model/foreign_key.rb, line 21 def initialize(model) @model = model @keys = {} add(generate_foreign_key(model.table_name)) end
Public Instance Methods
add(key, relationship_name = nil)
click to toggle source
# File lib/dynamic-active-model/foreign_key.rb, line 27 def add(key, relationship_name = nil) @keys[key] = relationship_name || model.table_name.underscore end
generate_foreign_key(table_name)
click to toggle source
# File lib/dynamic-active-model/foreign_key.rb, line 31 def generate_foreign_key(table_name) table_name.underscore.singularize + self.class.id_suffix end