aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
diff options
context:
space:
mode:
authorJamis Buck <jamis@37signals.com>2005-06-13 12:03:33 +0000
committerJamis Buck <jamis@37signals.com>2005-06-13 12:03:33 +0000
commit37a370d8d4e3e1a5bf707ffac9cd188c07572248 (patch)
treef97803d54bb21c0f55e2b0c22d53c5c57308b858 /activerecord/lib/active_record
parente0537acaeb6c432db844ff835120de7aabb1e39b (diff)
downloadrails-37a370d8d4e3e1a5bf707ffac9cd188c07572248.tar.gz
rails-37a370d8d4e3e1a5bf707ffac9cd188c07572248.tar.bz2
rails-37a370d8d4e3e1a5bf707ffac9cd188c07572248.zip
Be sure to use the @finder_sql in the has_many association's #find method, even if explicit conditions have not been given.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1412 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r--activerecord/lib/active_record/associations/has_many_association.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/associations/has_many_association.rb b/activerecord/lib/active_record/associations/has_many_association.rb
index 847709df8c..9e94d70972 100644
--- a/activerecord/lib/active_record/associations/has_many_association.rb
+++ b/activerecord/lib/active_record/associations/has_many_association.rb
@@ -66,9 +66,11 @@ module ActiveRecord
load_target.select { |record| ids.include?(record.id) }
end
else
- if options[:conditions] = sanitize_sql(options[:conditions])
- options[:conditions] = "#{@finder_sql} AND #{options[:conditions]}"
+ conditions = "#{@finder_sql}"
+ if sanitized_conditions = sanitize_sql(options[:conditions])
+ conditions << " AND #{sanitized_conditions}"
end
+ options[:conditions] = conditions
if options[:order] && @options[:order]
options[:order] = "#{options[:order]}, #{@options[:order]}"