Python 如何在Sphinx中交叉引用autodoc生成的函数?

Python 如何在Sphinx中交叉引用autodoc生成的函数?,python,methods,python-sphinx,restructuredtext,autodoc,Python,Methods,Python Sphinx,Restructuredtext,Autodoc,我正在使用Sphinxautodoc功能根据Python库的docstring生成文档 找到了交叉引用的语法 章节前必须有标签,以便从文档的其他区域引用该章节 我的一个类有一个.rst(ReStructeredText)文件。它使用 .. autoclass:: classname :members: 为类生成文档 我的问题是,如何从文档中的另一个.rst文档中引用该类的自动生成方法?如果我试图在方法的docstring中放置标签,Sphinx会抱怨。如果我尝试在方法标题前放置标签,S

我正在使用Sphinx
autodoc
功能根据Python库的docstring生成文档

找到了交叉引用的语法

章节前必须有标签,以便从文档的其他区域引用该章节

我的一个类有一个.rst(ReStructeredText)文件。它使用

.. autoclass:: classname
    :members:
为类生成文档

我的问题是,如何从文档中的另一个.rst文档中引用该类的自动生成方法?如果我试图在方法的docstring中放置标签,Sphinx会抱怨。如果我尝试在方法标题前放置标签,Sphinx将无法识别它

有没有一种简单的方法可以做到这一点,或者我必须在类文件中显式地写入方法名,并在其前面加上一个标签


下面是一个示例,[Python文档中的引用正在做我需要的事情(我假设它使用了autodoc功能,但我不确定)

您不需要添加标签。要引用Python类、方法或其他文档对象,请使用

例如,以下定义了对
mymethod
方法的交叉引用:

:py:meth:`mymodule.MyClass.mymethod`
或者更简单(因为Python域是默认域):

:meth:`mymodule.MyClass.mymethod`

您在问题中链接到的文档包括两个此类交叉引用(单击“Show Source”查看reST标记)。

您不需要添加标签。要引用Python类、方法或其他文档对象,请使用提供的标记

例如,以下定义了对
mymethod
方法的交叉引用:

:py:meth:`mymodule.MyClass.mymethod`
或者更简单(因为Python域是默认域):

:meth:`mymodule.MyClass.mymethod`

您在问题中链接到的文档包括两个此类交叉引用(单击“ShowSource”查看reST标记).

:mod:…
用于模块。和
:func:…
用于函数。关于如何交叉引用Python角色的完整列表是。和
:mod:…
用于模块。和
:func:…
用于函数。关于如何交叉引用Python角色的完整列表是。标题询问函数,但正文和答案是关于m的方法。我希望引用
。自动函数::
会有答案,但可惜它不在这里。标题询问函数,但正文和答案是关于方法的。我希望引用
。自动函数::
会有答案,但可惜它不在这里。