如何让Sphinx autosummary显示实例属性的文档?

Raf*_*afe 6 python documentation python-sphinx

所有其他类型(类,属性,方法等)工作正常,但当autosummary获取实例属性时,它会引发" WARNING: failed to import AClass.a"错误.奇怪的是,表格是使用以下autodoc代码文档的链接绘制的,但doc summary列为空.

有没有人有这个工作,或有任何想法可能是错的?

显示包含链接但没有文档的表格: 在此输入图像描述

显示autodoc正在工作(如果没有它,上面的链接将无法实现): 在此输入图像描述

我也尝试过其他形式的文档,例如#: ...样式等.所有相同的结果.同样,同一模块中的其他所有工作都可以.我在自动分析表中查看方法等的文档.

示例类:

class AClass(object):
    def __init__(self):
        self.a = 10
        """
        An example instance attribute

        :type: int
        """
Run Code Online (Sandbox Code Playgroud)

示例ReST:

.. autosummary::

    AClass.a
Run Code Online (Sandbox Code Playgroud)

我正在使用Sphinx 1.2.3

dap*_*azz 4

不幸的是,autosummary根本不支持这一点。重要的代码本质上是sphinx.ext.autosummary.__init__.AutoSummary.get_items

for name in names:

    # <snip>

    try:
        real_name, obj, parent, modname = import_by_name(name, prefixes=prefixes)
    except ImportError:
        self.warn('failed to import %s' % name)
        items.append((name, '', '', name))
        continue
Run Code Online (Sandbox Code Playgroud)

name是您想要为其进行摘要的指令下的内容autosummary,因此在您的情况下是"AClass.a". 但是,由于实例属性不可导入,并且import_by_name尝试导入名称,因此失败。我不知道实施者为什么这样做,但我们就这样了。

如果您有时间和意愿,应该可以解决这个问题!我已经打开了一个问题来跟踪它。