Ich kann nicht herausfinden, wie man über eine Vorlage Variablen in Sphinx-Dokumente bekommt. Ich mache sicherlich einen elementaren Fehler, aber während es viele Dokumentation für die Verwendung von Jinja/Flask-Vorlagen für Web-Service und einige Dokumentation für Sphinx using it gibt, habe ich Probleme, das Folgende zu tun. Vielleicht ist es nicht möglich und ich belle den falschen Baum auf, aber dann ist das ziemlich anders als das, wie Variablen im Allgemeinen in Webvorlagen (im Gegensatz zu Dokumentenvorlagen) funktionieren?Variablen in Sphinx-Vorlagen holen
Ich arbeite in einem viel größeren Projekt. Angenommen, in meinem Projekt conf.py
ich eine Variable machen, sagen
LANGS = ['en', 'de', 'cn']
Ich weiß, dass dies funktioniert, weil, wenn ich die docbuild tun (wir eine benutzerdefinierte docbuild haben, aber ich glaube nicht, es tut etwas wirklich verrückt anderes als eine maßgeschneiderte Logger und eine Reihe von ‚Chatter‘) mit der folgenden Zeile in conf.py
print len(LANGS)
essen zeigt es während der docbuild auf.
Aber jetzt möchte ich natürlich auf diese Variable in meiner Vorlage zugreifen. Soweit ich das beurteilen kann, überschreiben wir index.rst
mit templates/index.html
, die von der grundlegenden layout.html für Sphinx erbt. Und wenn ich
<p>We have {{ LANGS|len }} languages</p>
ich
Wir haben 0 Sprachen
Nun, dies ist seltsam, denn manchmal kann ich einen Fehler in der Build verursachen, indem sie auf Variablen bezieht sich nicht definiert (wenn auch nicht konsistent), so dass es weiß, dass die Variable definiert ist, aber denkt, dass sie die Länge Null hat. Oder hat eine "Null" Variable automatisch die Länge Null?
Wie bekomme ich diese Variable definiert - oder ist das nicht möglich?
Was ich will, ist zu tun, dann in der Liste für jede Sprache etwas tun (eine externe Verbindung machen, insbesondere), aber ich glaube es kein Sinn {% for %}/{% endfor %}
bei dem Versuch, oder was auch immer, wenn ich nicht bekommen das funktioniert. Vielleicht implementiert Sphinx nur eine Teilmenge von Jinja?
Wie auch immer, bitte helfen!
Möglicherweise ähnliche: http: // stackoverf low.com/questions/9709024/how-to-set-a-custom-config-value-for-sphinx-in-conf-py-e-g-for-sphinx-ext-if – kcrisman