在一个模块中,我有以下代码:
class ConfigParsers:
def str(raw, key):
# parse value as a string
# other parsers
class Section(dict):
def add_parsers(name, parsers):
"""Add a parser
:param str name: the name of the object
...
...
当sphinx使用autodoc构建此模块的文档时,“str”会链接到当前页面的ConfigParsers.str
而不是python文档。对于名称冲突在类中的其他内置类型(例如int和bool),会发生这种情况。如果解析器是在模块级别定义的,我可以理解碰撞,但是即使定义在类中,Sphinx也会形成碰撞,如上所述。
编辑:
我刚刚找到的工作需要使用新的intersphinx映射格式,然后使用identifierusedforstdlibcode:str
,但这并不理想,通常不会出现问题,因为sphinx通常会将其自动链接到程度。