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

2024-05-14 23:01:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Sphinxautodoc特性根据Python库的docstring生成文档。

交叉引用的语法是here

必须在节之前添加一个标签,以便从文档的其他区域引用该节。

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

.. autoclass:: classname
    :members:

为类生成文档。

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

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

下面是一个例子,[Python文档2中的一个引用,它做了我需要的事情(我假设它使用了autodoc特性,但我不确定)


Tags: 文件方法文档区域heresphinx语法rst
1条回答
网友
1楼 · 发布于 2024-05-14 23:01:12

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

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

:py:meth:`mymodule.MyClass.mymethod`

或者更简单(因为Python域是默认的):

:meth:`mymodule.MyClass.mymethod`

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

相关问题 更多 >

    热门问题