Ticket #6485: polymorphic_sti_associations_1.2.3-tested.diff
| File polymorphic_sti_associations_1.2.3-tested.diff, 3.3 kB (added by parasew, 3 years ago) |
|---|
-
activerecord/lib/active_record/associations/association_proxy.rb
old new 100 100 def set_belongs_to_association_for(record) 101 101 if @reflection.options[:as] 102 102 record["#{@reflection.options[:as]}_id"] = @owner.id unless @owner.new_record? 103 record["#{@reflection.options[:as]}_type"] = @owner.class. base_class.name.to_s103 record["#{@reflection.options[:as]}_type"] = @owner.class.name.to_s 104 104 else 105 105 record[@reflection.primary_key_name] = @owner.id unless @owner.new_record? 106 106 end -
activerecord/lib/active_record/associations/has_many_association.rb
old new 187 187 when @reflection.options[:as] 188 188 @finder_sql = 189 189 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_id = #{@owner.quoted_id} AND " + 190 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_type = #{@owner.class.quote _value(@owner.class.base_class.name.to_s)}"190 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_type = #{@owner.class.quote @owner.class.name.to_s}" 191 191 @finder_sql << " AND (#{conditions})" if conditions 192 192 193 193 else -
activerecord/lib/active_record/associations/has_one_association.rb
old new 69 69 when @reflection.options[:as] 70 70 @finder_sql = 71 71 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_id = #{@owner.quoted_id} AND " + 72 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_type = #{@owner.class.quote _value(@owner.class.base_class.name.to_s)}"72 "#{@reflection.klass.table_name}.#{@reflection.options[:as]}_type = #{@owner.class.quote @owner.class.name.to_s}" 73 73 else 74 74 @finder_sql = "#{@reflection.table_name}.#{@reflection.primary_key_name} = #{@owner.quoted_id}" 75 75 end -
activerecord/lib/active_record/associations.rb
old new 704 704 705 705 if association.updated? 706 706 self["#{reflection.primary_key_name}"] = association.id 707 self["#{reflection.options[:foreign_type]}"] = association.class. base_class.name.to_s707 self["#{reflection.options[:foreign_type]}"] = association.class.name.to_s 708 708 end 709 709 end 710 710 EOF