Автоматически создавать toctree для классов autodoc в Sphinx

Я хочу расширить документацию в одной из моих библиотек. Я использовал sphinx для создания документации и недавно начал изучать расширение autodoc.

Кажется, что в большинстве профессиональных документов на каждой странице документации по классам есть список всех документированных методов со ссылками вверху. Или, другими словами, toctree вверху с гиперссылками на каждую из более подробной документации по методам.

Есть ли способ автоматически создать это toctree для каждого из классов, документированных с помощью autodoc?


person Ben Hoff    schedule 01.01.2016    source источник
comment
Это может быть интересно: stackoverflow.com/q/14606348/407651   -  person mzjn    schedule 02.01.2016
comment
@mzjn, это интересно, и я это частично реализовал. Однако я по-прежнему не могу разместить токтри в верхней части документации класса в заглушке.   -  person Ben Hoff    schedule 06.03.2016
comment
Ой, nvm я запутался. Я заставил его работать! Если вы хотите опубликовать ответ, я его приму. В противном случае я отправлю один для потомков.   -  person Ben Hoff    schedule 06.03.2016


Ответы (1)


В вашем conf.py файле для сфинкса добавьте

extensions = ['sphinx.ext.autosummary',]
# NOTE: Don't overwrite your old extension list! Just add to it!

autodoc_default_flags = ['members']
autosummary_generate = True

Я помещаю toctree в свой index.rst, и он выглядит так:

.. autosummary::
     :toctree: stubs

     Class1
     Class2
     Class3

См. этот пример для настроек conf.py

и this example в качестве примера toctree .

Надеюсь, это поможет!

person Ben Hoff    schedule 25.11.2016