[Zope-dev] Organizing modules in a python product

Itai Tavor itai@optusnet.com.au
Fri, 16 Mar 2001 12:18:32 +1100


Hi,

I'm writing a python product containing around 40-50 modules, each 
one with some dtml files. At the moment I got all the modules .py 
files in the product directory, and a www directory with 
subdirectories for each module.

Products
   | -- MyProduct
           |-- Module1.py
           |-- Module2.py
           | www
               |-- Module1
                      |-- addModuleForm.dtml
               |-- Module2
                      |-- index.dtml
           |-- Utils.py

I want to change this to a layout where all the files for a module 
are grouped together:

Products
   |-- MyProduct
          |-- Module1
                 |-- Module1.py
                 |-- www
                        |-- addModuleForm.dtml
          |-- Module2
                 |-- Module2.py
                 |-- www
                        |-- index.dtml
            |-- Utils.py

But I'm finding this very hard to work with. In Module1, importing 
from Utils require doing 'from Products.MyProduct.Utils', and 
importing from another Module2 requires 'from 
Products.MyProduct.Module2.Module2'.

Is there any way to set this up so imports like 'import Utils' and 
'import Module2' would work in Module1? As a bonus, can I also get 
__init__.py files in each module directory to be executed?

TIA

Itai
--
Itai Tavor                      -- "Je sautille, donc je suis."    --
itai@optusnet.com.au            --               - Kermit the Frog --
--                                                                 --
-- "Every day, once a day, give yourself a present"  - Dale Cooper --