Sha256: 1c3d10ef13cd7636784edb888fe9666bf6084e21438d425abe86f9e8b9eef23c
Contents?: true
Size: 799 Bytes
Versions: 17
Compression:
Stored size: 799 Bytes
Contents
module ActiveRecord module Associations class HasOneThroughAssociation < HasManyThroughAssociation def create_through_record(new_value) #nodoc: klass = @reflection.through_reflection.klass current_object = @owner.send(@reflection.through_reflection.name) if current_object current_object.update_attributes(construct_join_attributes(new_value)) else @owner.send(@reflection.through_reflection.name, klass.send(:create, construct_join_attributes(new_value))) end end private def find(*args) super(args.merge(:limit => 1)) end def find_target super.first end def reset_target! @target = nil end end end end
Version data entries
17 entries across 16 versions & 9 rubygems