You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Sphinx autodoc/apidoc不生成submodules和subpackages分组?

取消Sphinx-RTD-Theme中autodoc的subpackages/submodules分组

要实现你需要的简洁层级结构,只需调整Sphinx配置和文档生成方式:

1. 修改conf.py配置

在项目的conf.py中做以下调整:

  • 确保启用sphinx.ext.autosummary扩展(与sphinx.ext.autodoc、sphinx_rtd_theme一同启用)
  • 开启自动生成autosummary内容
  • 配置autodoc默认选项,避免自动分组

添加/修改如下代码:

extensions = [
    'sphinx.ext.autodoc',
    'sphinx.ext.autosummary',
    'sphinx_rtd_theme',
]

# 自动生成autosummary文件
autosummary_generate = True

# 配置autodoc默认行为,取消分组
autodoc_default_options = {
    'member-order': 'bysource',
    'show-inheritance': True,
}

2. 调整主文档文件(如index.rst)

替换原来的automodule指令,改用autosummary块递归生成目录:

.. autosummary::
   :toctree: _autosummary
   :recursive:

   my_package

3. 重新构建文档

执行以下命令重新生成文档:

make clean && make html

完成以上步骤后,生成的侧边栏和目录会直接显示my_package下的子包与子模块层级,不再出现subpackages和submodules的额外分组。

内容的提问来源于stack exchange,提问作者DilithiumMatrix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 02:12:07