Hi all,
Could anyone tell me why you use .send when callling "include" in rails plugins??
E.g. ActiveRecord::Base.send :include, SomeClass::ClassMethods
Cheers, Dan
Hi all,
Could anyone tell me why you use .send when callling "include" in rails plugins??
E.g. ActiveRecord::Base.send :include, SomeClass::ClassMethods
Cheers, Dan
danfrost wrote:
Could anyone tell me why you use .send when callling "include" in rails plugins??
E.g. ActiveRecord::Base.send :include, SomeClass::ClassMethods
Take it out and see.
.include is protected or private or something. send() just says "shut up and do exactly what I say, b----!"
Thanks - nice answer.
So, ".send" by-passes all private / protected restrictions?
danfrost wrote: > Thanks - nice answer.
> So, ".send" by-passes all private / protected restrictions?
In 1.8, definitely. In 1.9...I think I read somewhere that it didn't any more. Don't quote me on that, though. If it's used in the rails plugins, that wouldn't really make sense.
1.9 was like that for a while (with a separate send! that still ignored whether a method was private/protected) but that was eventually removed.
Fred