如何在Sphinx中为Python类/属性/常量/方法指定别名?

时间:2015-01-19 22:11:55

标签: python python-sphinx

我目前正在使用Sphinx编写我的Python模块文档。

在记录某些功能的同时,如果发现自己编写的内容如下:

"""
Some documentation.

:param foo: My param.
:raises my_module.some.wicked.but.necessary.hierarchy.MyException: Something bad happenned.
"""

这很好用,Sphinx甚至将my_module.some.wicked.but.necessary.hierarchy.MyException链接到我的异常类的文档。

但是,我在这里可以看到两个问题:

  • 必须输入异常的完整模块路径是乏味的。没什么大不了但我能理解这在实际解析文档时是如何避免歧义的。所以我可能会忍受这一点。
  • 生成的文档还列出了完整名称(包括模块路径)。

这第二点使得输出相当难以阅读而且根本不好。它使文档变得混乱,并且不会带来太多,因为无论如何都可以单击链接以获得异常类的完整定义。

我尝试将其写为相对路径(例如,使用..hierarchy.MyException,但是Sphinx找不到类,链接也会被破坏)。

当我引用我的异常类时,有没有办法定义将使用的默认别名/标题而不是完整路径?我显然希望链接保持原样:我只想要一个更好(更短)的标题。

如果没有,Sphinx中是否有一个选项告诉它避免显示某些对象的完整模块路径?某种选择吗?

1 个答案:

答案 0 :(得分:0)

尝试:

:raises :py:class:`~.MyException`: something bad happened