【问题标题】:Autodoc an __init__(self) method: getting "autodoc-skip-member" to workAutodoc 一个 __init__(self) 方法:让“autodoc-skip-member”工作
【发布时间】:2015-09-02 17:36:48
【问题描述】:

之前有一个关于让 Sphinx 仅记录某些特殊方法的问题(在这种情况下为 __init__(self)):How to use Sphinx's autodoc to document a class's __init__(self) method?

接受的答案列出了 3 个选项,其中第一个是使用自定义函数来处理“autodoc-skip-member”事件。答案建议将此代码添加到conf.py

def skip(app, what, name, obj, skip, options):
    if name == "__init__":
        return False
    return skip

def setup(app):
    app.connect("autodoc-skip-member", skip)

这在我的情况下真的很好用,因为它是全局的,即不需要编辑 *.rst 文件。问题是,我无法让它工作。我将代码添加到conf.py,但是,__init__() 方法没有出现在文档中。我可以使用

autodoc_default_flags = ['special-members']

包括所有特殊方法,但我真的希望有更多的控制权并只包括其中的一些(__init__() 可能还有__repr__())。这种方法对其他人有用吗?我还需要做什么才能让它工作吗?

谢谢, 阿列克谢

【问题讨论】:

标签: python-sphinx autodoc


【解决方案1】:

根据https://github.com/sphinx-doc/sphinx/issues/2374,与拿破仑有冲突,如果您使用的任何扩展也为“autodoc-skip-member”事件设置了处理程序,则只会使用其中一个处理程序。这可能是您遇到的问题吗?

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 2016-07-16
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多