class G2R::RDBMS::JoinTable
Public Class Methods
new(source_table, relationship, target_table)
click to toggle source
Calls superclass method
# File lib/graph2relational/rdbms-join-table.rb, line 6 def initialize(source_table, relationship, target_table) # parent initialization super("") # additiional initialization table_name = "#{source_table}_#{relationship}_#{target_table}" @name = RDBMS.transform_name(table_name) @source_table = RDBMS.transform_name(source_table) @target_table = RDBMS.transform_name(target_table) end
Public Instance Methods
columns()
click to toggle source
Additionally return the source and target column ids plus all defined columns
Calls superclass method
# File lib/graph2relational/rdbms-join-table.rb, line 19 def columns [source_column, target_column] + super end
source_column()
click to toggle source
# File lib/graph2relational/rdbms-join-table.rb, line 23 def source_column Column.new(source_table + "_id").foreign_key(source_table) end
source_table()
click to toggle source
target_column()
click to toggle source
# File lib/graph2relational/rdbms-join-table.rb, line 27 def target_column if source_table != target_table Column.new(target_table + "_id").foreign_key(target_table) else Column.new(target_table + "_id_2").foreign_key(target_table) end end
target_table()
click to toggle source
# File lib/graph2relational/rdbms-join-table.rb, line 42 def target_table @target_table end