我正在努力弄清楚如何将我的Python类的特定成员的文档放在我的Sphinx文档的特定部分中,理想情况下是在另一部分自动记录其余部分。
我有一个Python类
class MyClass(object):
def funky(self, arg):
"""Some docs."""
...
my/module.py
中定义的按预期工作,我可以使用
进行无问题的记录***************************
MyModule - :mod:`my.module`
***************************
.. automodule:: my.module
.. autoclass:: MyClass
:members:
:undoc-members:
:show-inheritance:
但是当我试图更好地控制我的文档组织时,我无法让事情发生。具体来说,我希望在明确的部分中记录一些成员(这里只显示一个,但会有几个),其余成员自动记录为一组。
但是当我尝试使用时,例如
***************************
MyModule - :mod:`my.module`
***************************
To document
===========
Things that are not yet documented.
.. automodule:: my.module
.. autoclass:: MyClass
:members:
:undoc-members:
:show-inheritance:
:exclude-members: funky
Funky things
------------
Some funky things.
.. automethod:: funky
我得到了
警告:不知道要导入哪个模块以进行自动文档记录(尝试在文档中放置“module”或“currentmodule”指令,或者给出明确的模块名称)
但没有
的变体.. currentmodule:: my.module
.. class:: MyClass
.. automethod:: funky
或
.. currentmodule:: my.module
.. automethod:: funky
等。把我带到任何地方。
如何在Sphinx文档中的特定位置自动记录我班级的某些成员?
答案 0 :(得分:2)
这有效:
.. currentmodule:: my.module
.. automethod:: MyClass.funky
您可以跳过.. currentmodule::
并按照以下方式进行操作:
.. automethod:: my.module.MyClass.funky
第三种选择:
.. currentmodule:: my.module
.. autoclass:: MyClass
.. automethod:: funky