用于python的sphinx autodoc没有显示任何内容(在readthedocs上)

时间:2016-11-15 17:48:30

标签: python api python-sphinx read-the-docs autodoc

我有this python package我希望自动使用Sphinx进行记录。我在每个函数和类中插入了文档字符串。

我在ReadTheDocs上创建了一个帐户,并相应地进行了设置(即docs/目录带有conf.py文件。然后,基本上,我几乎尝试了所有事情:autodoc::autofunction::autoclass::的每个组合;我尝试使用相同的 conf.py文件作为其他记录API的包(当然根据我的情况进行了具体的更改);但它只是不起作用,API页面仍然空无一人......

1 个答案:

答案 0 :(得分:0)

尝试将此添加到您的conf.py:

########### TRICK FOUND ON SOME TUTORIAL : ADD IN THE MOCK_MODULES ANY EXTERNAL MODULE YOU'RE USING IN YOUR PACKAGE.

import mock

MOCK_MODULES = ['numpy', 'scipy', 'sklearn', 'matplotlib', 'matplotlib.pyplot', 'scipy.interpolate', 'scipy.special', 'math', '__future__', 'toolboxutilities']
for mod_name in MOCK_MODULES:
    sys.modules[mod_name] = mock.Mock()

在MOCK_MODULES中,添加项目使用的任何单个外部导入。我有完全相同的问题,这解决了它。

另外在conf.py中,不要忘记添加:

sys.path.insert(0, os.path.abspath('../..'))

在你的情况下,你已经拥有它,但我提到它以防其他有相同问题的人会看到我的答案。