我正在使用带有numpydoc扩展名和autosummary的sphinx。经过一些试验后,我在conf.py文件中添加了以下选项。
autosummary_generate = True
numpydoc_show_class_members = False
这为我为每个引用的类提供了一个新文件,如下所示,它还创建了所有属性和方法的摘要表。
.. autosummary::
:toctree: generated/
:nosignatures:
MyClass
问题是,虽然在方法摘要表中带有doc字符串的第一行,但方法的名称未链接到任何内容。如何获取方法的文档字符串以创建自己的文件(或至少在与类相同的文件中生成文档)?
首先,请确保您在conf.py文件中,字符串'sphinx.ext.autodoc'和'sphinx.ext.autosummary'在extensions列表中。
第二,您可以在generate /目录中手动创建名称为mymodule.MyClass.rst的文件,该文件可能是这样的:
mymodule.MyClass
================
.. currentmodule:: mymodule
.. autoclass:: MyClass
或者,如果您有很多类,则可以使用sphinx-autogen将其自动化。您可以从终端(其cd与conf.py文件相同)运行它::>
sphinx-autogen * .rst