I work a lot with modules, so I have a question. I have a 
'z_import_modules.py' model that would look something like this:

DEBUG = True
module1 = local_import('module1', reload=DEBUG)
module2 = local_import('module2', reload=DEBUG)
module3 = local_import('module3', reload=DEBUG)

obj1 = module1.Object1(globals(), db)
obj2 = module2.Object2(globals(), db)
obj3 = module3.Object3(globals(), db, obj1, obj2)
# obj3 is dependent on obj1 and obj2 instances

And my Object3 class' init method might look like this:
   def __init__(self, environment, db, obj1, obj2):
        self.env = Storage(environment)
        self.cache = self.env.cache
        self.request = self.env.request
        self.response = self.env.response
        self.db = db
        self.obj1 = obj1
        self.obj2 = obj2

With the new changes in the trunk, would I be able to rewrite my 
'z_import_modules.py' model to this?

from module1 import Object1
from module2 import Object2
from module3 import Object3

obj1 = Object1()
obj1 = Object1()

And would I be able to rewrite Object3's init method to something like this:
    def __init__(self):
        # assuming from gluon import *
        self.env = Storage(globals())
        self.cache = self.env.cache
        self.request = self.env.request
        self.response = self.env.response
        self.db = self.env.db
        self.obj1 = self.env.obj1
        self.obj2 = self.env.obj2

Is this what you mean by "only need to do "from gluon import *" to see 
everything web2py has to offer"?

Reply via email to