class ActsAsTable::Mapper::HasOne
ActsAsTable
mapper object for an instance of the {ActsAsTable::BelongsTo} class for the `:has_one` macro.
Public Class Methods
new(row_model, column_model_by_key, record_model, method_name, target, &block)
click to toggle source
Returns a new ActsAsTable
mapper object an instance of the {ActsAsTable::BelongsTo} class for the `:has_one` macro.
@param [ActsAsTable::RowModel] row_model @param [Hash<Symbol, ActsAsTable::ColumnModel>] column_model_by_key @param [ActsAsTable::RecordModel] record_model @param [#to_s] method_name @param [ActsAsTable::Mapper::RecordModel] target @yieldparam [ActsAsTable::Mapper::HasOne] has_one @yieldreturn [void] @return [ActsAsTable::Mapper::HasOne]
Calls superclass method
ActsAsTable::Mapper::Base::new
# File lib/acts_as_table/mapper.rb, line 176 def initialize(row_model, column_model_by_key, record_model, method_name, target, &block) @row_model, @column_model_by_key, @record_model = row_model, column_model_by_key, record_model @row_model.belongs_tos.build(macro: 'has_one', method_name: method_name) do |belongs_to| belongs_to.source_record_model = @record_model belongs_to.target_record_model = target.send(:instance_variable_get, :@record_model) end super(&block) end