Ich dokumentiere derzeit eine Rest-API in Python geschrieben. Die gesamte Projektdokumentation wird mit Sphinx erstellt, und für die REST-API möchte ich einige spezielle Anweisungen erstellen. Nehmen wir zum Beispiel an, ich habe diese Ressource definiert:So erstellen Sie benutzerdefinierte Anweisungen in Sphinx
@resource("/user/<email>", method="GET")
def user_details (email):
""" Returns detailed information about a user account.
:resource GET: /user/<email>
:query_param a_param: Some kind of query param.
"""
# Do stuff and return user details
Das ist im Grunde, wie die Dokumentation derzeit aussieht. Ich würde gerne in der Lage sein, eine Direktive für Sphinx zu erstellen, die eines oder mehrere dieser :query_param ...:
genauso formatiert wie es mit regulären :param:
.
Ich habe gefunden, wie man Rollen macht, aber sie arbeiten nur inline, nicht für Datenblöcke.
Wie sollte ich darüber gehen, dies zu machen?
Sie diese vielleicht fragen, auf der [Sphinx Google-Gruppe] (https://groups.google.com/forum/?fromgroups#!forum/sphinx-dev). Jemand könnte die Frage besser beantworten. Off-Hand, ich bin mir nicht sicher, wie Dokumentation Blöcke behandelt werden. Sie können sicherlich [Erweiterungen in Sphinx/Docutils erstellen] (http://sphinx.pocoo.org/extensions.html), aber ich bin mir nicht sicher, wie Docstring-Parsing in das Sphinx/Docutils-Modell passt. – jszakmeister
Die Antwort bezieht sich wahrscheinlich auf die Verwendung eines [GroupedField] (https://bitbucket.org/birkenfeld/sphinx/src/1f3a2749df39/sphinx/util/docfields.py#cl-74) in Ihrer Erweiterung. – jszakmeister