From 9e799e731c7960e37ea928371e93590a79f36000 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Mon, 4 Apr 2005 04:56:23 +0000 Subject: Prefix primary key with table name so it works as part of a joined fetch git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1086 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activerecord/lib/active_record/base.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index df42303905..b4f1b3ba73 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -318,7 +318,7 @@ module ActiveRecord #:nodoc: when 0 raise RecordNotFound, "Couldn't find #{name} without an ID#{conditions}" when 1 - if result = find(:first, options.merge({ :conditions => "#{primary_key} = #{sanitize(ids.first)}#{conditions}" })) + if result = find(:first, options.merge({ :conditions => "#{table_name}.#{primary_key} = #{sanitize(ids.first)}#{conditions}" })) return expects_array ? [ result ] : result else raise RecordNotFound, "Couldn't find #{name} with ID=#{ids.first}#{conditions}" @@ -326,7 +326,7 @@ module ActiveRecord #:nodoc: else # Find multiple ids ids_list = ids.map { |id| sanitize(id) }.join(',') - result = find(:all, options.merge({ :conditions => "#{primary_key} IN (#{ids_list})#{conditions}", :order => primary_key })) + result = find(:all, options.merge({ :conditions => "#{table_name}.#{primary_key} IN (#{ids_list})#{conditions}", :order => primary_key })) if result.size == ids.size return result else -- cgit v1.2.3