更改 sys.path 以阅读文档

Changing the sys.path for read the docs

我正在使用 sphinx 在本地记录我的金字塔项目。本地 autodoc 工作正常,文档看起来像我想要的那样。

但是如果我使用阅读文档,每次使用 autodoc 功能时都会收到以下错误:

/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

我的项目结构如下:

project
->code
  ->models
  ->scripts
  ->...
  ->__init__.py
  ->...
->docs
  ->conf.py
  ->documentation
->setup.py

我认为我的 sys.path 配置不正确。经过大量尝试后,我回到了 sys.path.insert(0, os.path.abspath('.'))

在你的 conf.py 中试试这个

sys.path.insert(0, os.path.join(os.path.dirname((os.path.abspath('.')), 'code', 'models')

因为它需要 Person class 的路径,而 class 是更上一层楼 在你的层次结构中,你可以拉出 class.

的路径