Ich versuche, die Dokumentation für alle von meiner Anwendung unterstützten URLs automatisch aus dem Code zu erstellen. Wir verwenden vollständig clientseitige MVC, daher ist jede URL, die unterstützt wird, im Wesentlichen eine REST-API für die Benutzeroberfläche. Gibt es eine einfache Möglichkeit, die Dokumentation aus diesen URLs zu generieren?
Ich habe dieses kleine Modul jetzt geschrieben, aber ich suche nach besseren Wegen als das hier. Ich möchte das Rad nicht neu erfinden, wenn etwas Ähnliches bereits existiert.
UPDATE : Beachten Sie, dass die Absicht darin besteht, eine öffentliche Dokumentation für die Verbraucher der Website bereitzustellen, nicht für den internen Verbrauch. In diesem Zusammenhang müssen wir für jede URL Folgendes dokumentieren: - Was ist die Antwort, - welche Parameter akzeptiert werden, - wenn die URL auf GET / POST oder beides antwortet, usw.
Bestimmte URLs wie (^ $), die einfach auf die Homepage umgeleitet werden, sollten nicht dokumentiert werden, daher brauche ich auch einen Ausschlußmechanismus.
%Vor%Nur ein letztes Update, falls jemand interessiert ist.
Wir haben das Code-Snippet für interne Zwecke verwendet. Wir haben uns dazu entschlossen, Sphinx zu nutzen und dies zu nutzen, wenn wir am Ende des Projekts den Entwicklerleitfaden erstellen, wenn wir bereit für die öffentliche Beta sind, denn es erfordert etwas Zeit und Investitionen für Lernen, Logistik usw.
Sie können die URL-Muster vom Stammmodul durchlaufen und die Objekte der Ansichtsfunktion untersuchen, um die Dokumentationsdaten wie Sie zu erhalten, aber ich wäre lieber Rendern durch eine Vorlage , um das Dokument zu kompilieren.
Ich würde jedoch vorschlagen, dass Sie Sphinx einsetzen. Sie müssen wahrscheinlich mehr als nur Ihre Endpunkte dokumentieren (Nutzungsbedingungen, Datenschutzbestimmungen, Authentifizierung, yadda yadda) und Sie können Ihre eigenen Erweiterungen , die eine Direktive offenlegen, die Sie in einem Dokument aufrufen können, um genau das zu tun, was Sie hier getan haben.
Oder Sie könnten es einfach vermeiden, dies komplett zu planen: Verwalten Sie Ihre Sphinx-Dokumente von Hand, erstellen Sie ein Github-Repository und hosten Sie die Dokumentation auf Ссылка !