交叉引用装饰器

Posted

技术标签:

【中文标题】交叉引用装饰器【英文标题】:Cross referencing decorators 【发布时间】:2015-08-01 22:44:33 【问题描述】:

sphinx 中的 python 域有 .. py:decorator:: 来记录装饰器,但是如何?

对于函数(用.. py:function:: 记录),有:py:func:。装饰器的等价物是什么?

【问题讨论】:

【参考方案1】:

我在 sphinx 的文档中找到了答案:

没有 py:deco 角色可以链接到使用该指令标记的装饰器;相反,使用 py:func 角色。 http://sphinx-doc.org/domains.html#directive-py:decorator

官方的解决方案是使用:py:func:。它也有效。不幸的是,sphinx 在装饰器名称后添加了括号。

text py:func:`mydecorator` text

成为输出:

text mydecorator() text

刹车可以全局禁用,但在引用实际功能时我非常喜欢它们。

【讨论】:

您可以使用:func:`@mydecorator()<mydecorator>` 更改参考中的链接文本。如果不需要括号,可以省略括号,例如装饰器没有参数。

以上是关于交叉引用装饰器的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis的这两个缓存装饰器不要忽略

装饰器

Python装饰器

装饰器

python-装饰器

解决使用@wraps装饰器,但是仍然未消除装饰器产生的副作用问题