我正在使用Sphinx autodoc
根据我的 Python 库的文档字符串生成文档的功能。
找到交叉引用的语法here http://sphinx-doc.org/markup/inline.html#ref-role
该部分之前必须有一个标签,以便可以从文档的其他区域引用该部分。
我拥有的是我的一个课程的 .rst (ReStructuredText) 文件。它用
.. autoclass:: classname
:members:
为该类生成文档。
我的问题是,如何从文档中的另一个 .rst 文档引用该类的自动生成方法?如果我尝试在方法的文档字符串中放置标签,Sphinx 会抱怨。如果我尝试在方法标题之前放置标签,Sphinx 无法识别它。
有没有一种简单的方法可以做到这一点,或者我必须在类文件中显式写入方法名称并在其前面加上标签?
这是 [Python 文档中的参考示例]2 http://docs.python.org/2.7/library/textwrap.html#textwrap.TextWrapper.wrap做我需要的事情(我假设它使用了自动文档功能,尽管我不确定)
您不需要添加标签。为了引用 Python 类、方法或其他记录的对象,请使用由Python域 https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html#cross-referencing-python-objects.
例如,以下定义了对mymethod
方法:
:py:meth:`mymodule.MyClass.mymethod`
或者更简单(因为 Python 域是默认域):
:meth:`mymodule.MyClass.mymethod`
的文档TextWrapper.wrap http://docs.python.org/2.7/library/textwrap.html#textwrap.TextWrapper.wrap您在问题中链接到的内容包括两个此类交叉引用(单击“显示源”以查看其余标记)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)