Fantastic, that is exactly what I was looking for!
-Jim
On 7/8/2011 2:20 PM, Anthony wrote:
local_import should work, but you should now use regular import
statements instead. If you want your modules reloaded automatically,
do the following:
from gluon.custom_import import track_changes
track_changes()
That will reload your modules, but only when they change (which is an
improvement over local_import, which will reload whether or not there
are changes). Note, I believe the above will affect all applications.
To turn off reloading, do:
track_changes(track=False)
And to test whether changes are currently being tracked:
from gluon.custom_import import track_changes, is_tracking_changes
if not is_tracking_changes():
track_changes()
Anthony
On Friday, July 8, 2011 3:06:07 PM UTC-4, Jim S wrote:
Hi
I have a utility module that I use regularly where I put some of
my application-specific helper functions. What is the proper way
to import this to make it available in my controllers and views?
I've tried the local_import in db.py but have seen references on
this list that recommend against using that. This method had the
reload=True option that allowed me to make changes to my utility
module and not have to restart the web2py server to make the
changes visible.
If I recall correctly (and I certainly could be wrong), the
preferred method is to now use import. But, using this method I
have to restart web2py every time I make a change so I can see the
results.
Can someone please tell me how I can import a module and have it
reload automatically like local_import('module', reload=True)
does? Or, should I still be using local_import when I want
reloading to occur?
Thanks
-Jim