I often put files in lib which add new modules or monkey patch existing
classes etc. These always need to be explicitly required in my
environment file. That all works, but one of my colleagues believes
that everything in lib should be loaded automatically, and that the
requires should be necessary. This definitely isn’t the case - if i
remove the require then i dont get the extra functionality.
Is something going wrong for me? Or are lib files not meant to be
loaded automatically?
Is something going wrong for me? Or are lib files not meant to be
loaded automatically?
As far as I know they are not loaded automatically in the sense that
rails won’t just load them without any intervention from you. They are
in the sense that if you say MyModule then rails will try and load
my_module.rb in lib (among other places). This of course doesn’t work
if what your file contains is a monkey patch. Perhaps these two
different meanings of automatically are what are clouding the issue
(and on top of all that there’s rails 2.2’s ‘load everything on
startup’ mode which may or may not grab things from /lib - I can’t
remember)
Is something going wrong for me? Or are lib files not meant to be
loaded automatically?
As far as I know they are not loaded automatically in the sense that
rails won’t just load them without any intervention from you. They are
in the sense that if you say MyModule then rails will try and load
my_module.rb in lib (among other places). This of course doesn’t work
if what your file contains is a monkey patch. Perhaps these two
different meanings of automatically are what are clouding the issue
(and on top of all that there’s rails 2.2’s ‘load everything on
startup’ mode which may or may not grab things from /lib - I can’t
remember)
Fred
ah, ok. i think that explains my confusion - i’d seen some stuff work
without being required. We’re using 2.2.2 though and it’s not grabbing
everything from lib.
ah, ok. i think that explains my confusion - i’d seen some stuff work
without being required. We’re using 2.2.2 though and it’s not grabbing
everything from lib.
I should add that that thing is only turned on in production anyway.
Fred
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.