2016-06-26 3 views
1

Ich verwende Docstrings, um Python-Code und Sphinx-Autodoc zu dokumentieren, um Apidoc-HTMLs zu generieren. Die Struktur meiner Pakete ist wie folgt: mainpackage.subpackage.module, möchte ich Apidocs zu Klassen von einem Modul als mainpackage.subpackage.Class und nicht mainpackage.subpackage.module.Class verknüpfen. Mein Problem kommt aus dem scikit-multilearn Projekt, zum Beispiel: Ich habe eine MLClassifierBase Klasse in skmultilearn.base.base, aber ich bin es in __init__.py in skmultilearn.base importieren, und ich möchte die Sphinx-generierte apidocs nur diese Klasse als skmultilearn.base.MLClassifierBase verwenden und nicht skmultilearn.base.base.MLClassifierBase wie es tut jetzt. Kann jemand helfen?Wie man Apidocs macht Verwenden Sie Pakete anstelle von Modulen in sphinx-apidoc

Ich habe schon versucht:

  • gesetzt add_module_names = False in conf.py pro Sphinx apidoc - don't print full path to packages and modules

  • """.. automodule:: base""" zu skmultilearn/base/__init__.py

  • __all__ = ['MLClassifierBase']

  • Anzeige an skmultilearn/base/__init__.py hinzugefügt hinzugefügt ded .. autoclass:: base.MLClassifierBase der Klasse docs

ich Bases ein noch habe: skmultilearn.base.base.MLClassifierBase in jeder Klasse, die von MLClassifierBase ableitet. Wie ändere ich das?

+0

Ähnlich wie http://stackoverflow.com/q/15115514/407651 und http://stackoverflow.com/q/30856279/407651 – mzjn

Antwort

0

Ich habe eine Lösung gefunden:

""" 
The :mod:`skmultilearn.base` module implements base 
classifier classes for scikit-multilearn's multi-label classification. 
""" 

from .base import MLClassifierBase 
from .problem_transformation import ProblemTransformationBase 

__all__ = ["MLClassifierBase", 
      "ProblemTransformationBase"] 

Es Dokumentation für base.ProblemTransformationBase und nicht base.base.ProblemTransformationBase produziert. Sie müssen alltogether die drei Elemente haben in Ihrem __init__.py:

  • die Definition von :mod: überall erwähnt
  • die Einfuhr von Klassen
  • die Namen der Klassen in `alle` `
Verwandte Themen