Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #6792: active_record.diff

File active_record.diff, 8.8 kB (added by loobmedia, 2 years ago)
  • lib/active_record/associations/association_proxy.rb

    old new  
    100100        def set_belongs_to_association_for(record) 
    101101          if @reflection.options[:as] 
    102102            record["#{@reflection.options[:as]}_id"]   = @owner.id unless @owner.new_record? 
    103             record["#{@reflection.options[:as]}_type"] = @owner.class.base_class.name.to_s 
     103            record["#{@reflection.options[:as]}_type"] = @owner.class.base_class.name.to_s.demodulize 
    104104          else 
    105105            record[@reflection.primary_key_name] = @owner.id unless @owner.new_record? 
    106106          end 
  • lib/active_record/associations/has_one_association.rb

    old new  
    6969            when @reflection.options[:as] 
    7070              @finder_sql =  
    7171                "#{@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_value(@owner.class.base_class.name.to_s.demodulize)}"           
    7373            else 
    7474              @finder_sql = "#{@reflection.table_name}.#{@reflection.primary_key_name} = #{@owner.quoted_id}" 
    7575          end 
  • lib/active_record/associations/has_many_association.rb

    old new  
    187187            when @reflection.options[:as] 
    188188              @finder_sql =  
    189189                "#{@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_value(@owner.class.base_class.name.to_s.demodulize)}" 
    191191              @finder_sql << " AND (#{conditions})" if conditions 
    192192             
    193193            else 
  • lib/active_record/associations/has_many_through_association.rb

    old new  
    130130        def construct_owner_attributes(reflection) 
    131131          if as = reflection.options[:as] 
    132132            { "#{as}_id" => @owner.id, 
    133               "#{as}_type" => @owner.class.base_class.name.to_s
     133              "#{as}_type" => @owner.class.base_class.name.to_s.demodulize
    134134          else 
    135135            { reflection.primary_key_name => @owner.id } 
    136136          end 
     
    146146          if as = reflection.options[:as] 
    147147            { "#{as}_id" => @owner.quoted_id, 
    148148              "#{as}_type" => reflection.klass.quote_value( 
    149                 @owner.class.base_class.name.to_s
     149                @owner.class.base_class.name.to_s.demodulize
    150150                reflection.klass.columns_hash["#{as}_type"]) } 
    151151          else 
    152152            { reflection.primary_key_name => @owner.quoted_id } 
     
    182182            if @reflection.source_reflection.options[:as] 
    183183              polymorphic_join = "AND %s.%s = %s" % [ 
    184184                @reflection.table_name, "#{@reflection.source_reflection.options[:as]}_type", 
    185                 @owner.class.quote_value(@reflection.through_reflection.klass.name
     185                @owner.class.quote_value(@reflection.through_reflection.klass.name.demodulize
    186186              ] 
    187187            end 
    188188          end 
  • lib/active_record/associations/belongs_to_polymorphic_association.rb

    old new  
    99 
    1010          unless record.new_record? 
    1111            @owner[@reflection.primary_key_name] = record.id 
    12             @owner[@reflection.options[:foreign_type]] = record.class.base_class.name.to_s 
     12            @owner[@reflection.options[:foreign_type]] = record.class.base_class.name.to_s.demodulize 
    1313          end 
    1414 
    1515          @updated = true 
  • lib/active_record/associations.rb

    old new  
    696696                 
    697697                if association.updated? 
    698698                  self["#{reflection.primary_key_name}"] = association.id 
    699                   self["#{reflection.options[:foreign_type]}"] = association.class.base_class.name.to_s 
     699                  self["#{reflection.options[:foreign_type]}"] = association.class.base_class.name.to_s.demodulize 
    700700                end 
    701701              end 
    702702            EOF 
     
    10361036          # Add polymorphic type if the :as option is present 
    10371037          dependent_conditions = %(#{reflection.primary_key_name} = \#{record.quoted_id}) 
    10381038          if reflection.options[:as] 
    1039             dependent_conditions += " AND #{reflection.options[:as]}_type = '#{base_class.name}'" 
     1039            dependent_conditions += " AND #{reflection.options[:as]}_type = '#{base_class.name.demodulize}'" 
    10401040          end 
    10411041 
    10421042          case reflection.options[:dependent] 
     
    14901490                          table_alias_for(through_reflection.klass.table_name, aliased_join_table_name), 
    14911491                          aliased_join_table_name, polymorphic_foreign_key, 
    14921492                          parent.aliased_table_name, parent.primary_key, 
    1493                           aliased_join_table_name, polymorphic_foreign_type, klass.quote_value(parent.active_record.base_class.name)] + 
     1493                          aliased_join_table_name, polymorphic_foreign_type, klass.quote_value(parent.active_record.base_class.name.demodulize)] + 
    14941494                        " LEFT OUTER JOIN %s ON %s.%s = %s.%s " % [table_name_and_alias, 
    14951495                          aliased_table_name, primary_key, aliased_join_table_name, options[:foreign_key] || reflection.klass.to_s.classify.foreign_key 
    14961496                        ] 
     
    15051505                            aliased_table_name, "#{source_reflection.options[:as]}_id",  
    15061506                            aliased_join_table_name, options[:foreign_key] || primary_key, 
    15071507                            aliased_table_name, "#{source_reflection.options[:as]}_type",  
    1508                             klass.quote_value(source_reflection.active_record.base_class.name
     1508                            klass.quote_value(source_reflection.active_record.base_class.name.demodulize
    15091509                          ] 
    15101510                        else 
    15111511                          case source_reflection.macro 
     
    15401540                        aliased_table_name, "#{reflection.options[:as]}_id", 
    15411541                        parent.aliased_table_name, parent.primary_key, 
    15421542                        aliased_table_name, "#{reflection.options[:as]}_type", 
    1543                         klass.quote_value(parent.active_record.base_class.name
     1543                        klass.quote_value(parent.active_record.base_class.name.demodulize
    15441544                      ] 
    15451545                    when reflection.macro == :has_one && reflection.options[:as] 
    15461546                      " LEFT OUTER JOIN %s ON %s.%s = %s.%s AND %s.%s = %s " % [ 
     
    15481548                        aliased_table_name, "#{reflection.options[:as]}_id", 
    15491549                        parent.aliased_table_name, parent.primary_key, 
    15501550                        aliased_table_name, "#{reflection.options[:as]}_type", 
    1551                         klass.quote_value(reflection.active_record.base_class.name
     1551                        klass.quote_value(reflection.active_record.base_class.name.demodulize
    15521552                      ] 
    15531553                    else 
    15541554                      foreign_key = options[:foreign_key] || reflection.active_record.name.foreign_key 
     
    15741574              [through_reflection, reflection].each do |ref| 
    15751575                join << "AND #{interpolate_sql(sanitize_sql(ref.options[:conditions]))} " if ref && ref.options[:conditions] 
    15761576              end 
    1577  
     1577               
    15781578              join 
    15791579            end