1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Make sure the relations are always immutable

This commit is contained in:
Pratik Naik 2009-12-26 14:26:02 +05:30
parent 187fbe5cba
commit 284d186cf4

View file

@ -12,18 +12,15 @@ module ActiveRecord
end
def preload(associations)
@associations_to_preload << associations
self
create_new_relation(@relation, @readonly, @associations_to_preload + Array.wrap(associations))
end
def eager_load(associations)
@eager_load_associations += Array.wrap(associations)
self
create_new_relation(@relation, @readonly, @associations_to_preload, @eager_load_associations + Array.wrap(associations))
end
def readonly
@readonly = true
self
create_new_relation(@relation, true)
end
def to_a
@ -124,8 +121,8 @@ module ActiveRecord
end
end
def create_new_relation(relation)
Relation.new(@klass, relation, @readonly, @associations_to_preload, @eager_load_associations)
def create_new_relation(relation, readonly = @readonly, preload = @associations_to_preload, eager_load = @eager_load_associations)
Relation.new(@klass, relation, readonly, preload, eager_load)
end
end