2016-04-20 11 views
0

Ich modifiziere eine Pelikan-Vorlage und ich habe den folgenden Code, der URL jedes Mal hinzufügt, wenn eine Seite gefunden wird. Ich kann sehen, dass das p-Objekt die Attribute URL und Titel hat.Wie überprüfe ich Pelican-Variablen

Allerdings wusste ich das nur, weil ich den Code von einer anderen Vorlage kopiert habe, die unten gezeigt wird. Gibt es eine Möglichkeit, Objekte in Jinja2 oder Pelican zu untersuchen, um zu verstehen, welche Informationen in ihnen enthalten sind?

 {% for p in pages %} 
     <h1 class = "sidebar-title"> 
      <a href="{{ SITEURL }}/{{ p.url }}"> 
      {{ p.title }} 
      </a> 
     </h1> 

<li{% if p == page %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a></li> 

Antwort

2

ich nicht, dass es eine offizielle Ressource ist, alle Variablen zu erklären, Objekte, Attribute und Eigenschaften im Detail.

Aber für den Anfang, denke ich, die folgenden Startpunkte genügen:

  • Common variables available for the standard templates
  • pelican.contents.py: Dies ist das Modul, das (die meisten) der Datenstrukturen Pelikan Anwendungen enthält und die zur Verfügung gestellt werden in den Vorlagen. Suchen Sie nach Eigenschaften (@property, das sind Funktionen, die sich wie Attribute verhalten) und Attributen. In den Zeilen 367ff gibt es einige sehr einfache Unterklassendefinitionen, die nützlich sein könnten.
  • pelican.writers.py: Dieses Modul enthält die Templating-Engine jinja2, die Vorlagen und die Daten, die in die Vorlagen eingefügt werden. Von besonderem Interesse für Sie könnten die Zeilen 138ff sein, da dies ein guter Punkt zu sein scheint, einfach einige kleine Debug-Ausdrucke einzufügen, um die echten Daten zu sehen, die in den Datenstrukturen vorhanden sind.
Verwandte Themen