Sphinx自动摘要为每个类生成两个摘要

问题描述 投票:2回答:1

我正在使用Sphinx + autodoc + autosummary为我的项目(mrpy)生成文档。

我正在进行两层摘要,其中(至少)在index.rst中]]

mrpy
====

.. autosummary::
   :toctree: _autosummary
   :template: modules.rst

   mrpy.stats
   <other modules...>

如您所见,我将自定义模板用于模块级自动摘要。我这样做是为了在模块级摘要上获得模块内对象的摘要,每个对象都链接到各自的页面。供参考,我的modules.rst文件是

{{ fullname }}
{{ underline }}

.. automodule:: {{ fullname }}

   {% block functions %}
   {% if functions %}
   .. rubric:: Functions

   .. autosummary::
      :toctree: {{ objname }}
   {% for item in functions %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {% endblock %}

   {% block classes %}
   {% if classes %}
   .. rubric:: Classes

   .. autosummary::
      :toctree: {{ objname }}
      :template: class.rst
   {% for item in classes %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {% endblock %}

   {% block exceptions %}
   {% if exceptions %}
   .. rubric:: Exceptions

   .. autosummary::
   {% for item in exceptions %}
      {{ item }}
   {%- endfor %}
   {% endif %}
   {% endblock %}

mrpy.stats仅包含三个类,当跟随索引页上生成的表中的链接时,可以很好地总结这些类。当遵循这些类之一的链接时,我使用另一个自定义模板class.rst

{{ fullname }}
{{ underline }}

.. currentmodule:: {{ module }}

.. autoclass:: {{ objname }}

   {% block methods %}

   {% if methods %}
   .. rubric:: Methods

   .. autosummary::
      :toctree: {{ objname }}
   {% for item in methods %}
      ~{{ name }}.{{ item }}
   {%- endfor %}
   {% endif %}
   {% endblock %}

   {% block attributes %}
   {% if attributes %}
   .. rubric:: Attributes

   .. autosummary::
      :toctree: {{ objname }}
   {% for item in attributes %}
      ~{{ name }}.{{ item }}
   {%- endfor %}
   {% endif %}
   {% endblock %}

但是,此类的页面包含标题,如预期的那样,类docstring,如预期的那样,但是two

列出了该类的方法和属性的摘要。

任何人都知道如何摆脱冗余表之一?

我正在使用Sphinx + autodoc + autosummary为我的项目(mrpy)生成文档。我正在做一个两层的摘要,在index.rst中,我(至少)有mrpy ==== .. autosummary :::...

python python-sphinx numpydoc
1个回答
2
投票

似乎答案是numpydoc与autosummary捆绑在一起。将numpydoc_show_class_members=False添加到conf.py中可以解决此问题。在这里找到解决方案:https://github.com/phn/pytpm/issues/3#issuecomment-12133978

© www.soinside.com 2019 - 2024. All rights reserved.