ich programmiere schon seit einiger Zeit an einem kleinen Projekt und wollte mir jetzt mal verschiedene Möglichkeiten der Dokumentation anschauen. Hängen geblieben bin ich dann bei sphinx, da mir die textbasierte Erstellung gefällt und es auch von Python selbst benutzt wird (Das einizge was noch fehlt sind automatische erstellungen von Docstrings in eclipse).
Nun bin ich aber auf ein Problem gestoßen, welches mich zum nachdenkn über Import-Anweisungen gebracht hat. Die Struktur sieht bei mir in etwa so aus:
Code: Alles auswählen
projekt/
├── Models
│ ├── __init__.py
│ ├── modul1.py
│ └── modul2.py
├── __init__.py
├── modul1.py
├── modul2.py
└── websiteHandler
├── __init__.py
├── handler1.py
├── handler2.py
└── handler3.py
Zum importieren habe ich jetzt einfach den Ordner, wo das Projekt liegt (workspace-Ordner in eclipse) , zum Pythonpath hinzugefügt. Das hat zur Folge, das die import-Anweisungen so aussehen:
Code: Alles auswählen
import projekt.websiteHandler.handler1
Nun meine Frage, was ist der "richtige" Weg, die richtige Auflistung zu verwenden? Benutzt wird das ganze unter Mac (python2.7), Debian Squeeze (2.6) und Wheezy (2.7).
Zum einen könnte ich relative Anweisungen verwenden oder den Projektordner selbst zum pythonpath hinzufügen, unter letzterem leidet dann aber die Portierbarkeit, da ich auf anderen Systemen erst den pythonpath ändern muss. Das Hinzufügen des Pythonpath in jedem Modul halte ich eigentlich auch nicht für praktikabel.
Ich hoffe, ihr könnt mir irgendwie helfen oder Anregungen geben. Vielleicht kennt ja auch noch jemand einen schönen Weg, automatisch Docstrings für sphinx mit Eclipse zu erstellen.
mfg Bambie