自动模块在sphinx文档中生成toc

时间:2015-02-03 19:22:55

标签: python python-sphinx

在Sphinx中,有没有办法让automodule指令生成类中成员的TOC?

现在我有

.. Contents ::

.. topic:: Abstract

   bla bla bla

.. automodule:: ServerCommHandler
    :members:
    :private-members:
    :special-members:
    :show-inheritance:
    :inherited-members:

哪个工作正常,但是这个模块中有很多方法,指向该方法的toc非常好。

2 个答案:

答案 0 :(得分:1)

autodocsumm扩展名将允许autodoc指令(自动模块,自动类)自动添加摘要表,例如内置的autosummary扩展名。

它可以如下使用:


async def download_upload_xmls_async(message,count,id,conn1,cursor1,conn2,cursor2):
    # SOME CODE
    xml = await req(urlX, headers)

    print('Got message')

    write(message_count, id, conn1, cursor1)
    print('Wrote progress')

    send_message("Send" + xml, id, conn2, cursor2)
    print('Sent message')

    write_locally(data)

    await message.ack()

然后编辑您的def send_message(message, id, con, cur, **nargs): params = { #some params } union_params= {**params, **nargs} data = json.dumps(union_params, ensure_ascii=False) cur.execute( #Query ) con.commit() 以添加扩展名:

pip install autodocsumm

,然后在您的autodoc指令中添加一个conf.py选项,例如:

extensions = [
    'sphinx.ext.autodoc',
    ...,
    'autodocsumm',
]

如果要使所有autodoc指令的自动摘要生效而不显式添加它们,则可以从:autosummary:进行如下操作:

.. automodule: foo.bar
    :autosummary:

如果您使用sphinx-apidoc动态生成API页面,而该页面不容易配置为添加conf.py,则此功能特别有用。

自动生成所有API页面的autodoc_default_options = { 'autosummary': True, } 的完整示例:

:autosummary:

答案 1 :(得分:-3)

toctree怎么样。

.. toctree::

   ServerCommHandler