I am documenting my pyramid project locally with sphinx. Locally autodoc
works fine and the documentation looks the way I want it.
But if I am using read the docs I get the following error for each use of the autodoc feature:
/home/docs/checkouts/readthedocs.org/user_builds/buchungssystem/checkouts/latest/docs/source/02database/02models.rst:8: WARNING: autodoc: failed to import class u'Person' from module u'buchungssystem.models.person'; the following exception was raised: Traceback (most recent call last): File "/home/docs/checkouts/readthedocs.org/user_builds/buchungssystem/envs/latest/local/lib/python2.7/site-packages/sphinx/ext/autodoc.py", line 385, in import_object __import__(self.modname) ImportError: No module named buchungssystem.models.person
My project is structured like this:
project
->code
->models
->scripts
->...
->__init__.py
->...
->docs
->conf.py
->documentation
->setup.py
I think that my sys.path is not configured correctly. After trying out a lot I am back at sys.path.insert(0, os.path.abspath('.'))
in your conf.py
try this
sys.path.insert(0, os.path.join(os.path.dirname((os.path.abspath('.')), 'code', 'models')
because it requires path to the Person
class and that class is one step up in your hierarchy and the you can pull the path of that class.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.