2017-02-07 3 views
1

Wie verwende ich eine Bedingung in Django CMS in base.html, um zu erkennen, ob die Seite die Homepage ist, und eine eindeutige Klasse zum body-Tag hinzuzufügen? Ich würde es vorziehen, die Basis nicht zu duplizieren und einfach eine Klasse hinzuzufügen, damit ich einige Stile auf der Homepage anders handhaben kann.Django CMS konditional

Antwort

1

Es hängt davon ab, wie Sie Ihre Seiten strukturieren.

Ich entscheide mich dafür, Seiten als Kind der Home-Seite zu erstellen, also verwende so etwas für Seitentitel;

{% if request.current_page.get_ancestors|length <= 1 %} 
    <h1>{{ request.current_page.get_page_title }}</h1> 
{% else %} 
    {% for ance in request.current_page.get_ancestors %} 
     {% if ance.depth == 2 %} 
      <h1>{{ ance.get_page_title }}</h1> 
     {% endif %} 
    {% endfor %} 
{% endif %} 

So könnten Sie etwas wie tun;

<body class="{% if request.current_page.get_ancestors|length <= 1 %}base{% endif %}"> 
+0

Das ist genau das, was ich brauchte. Vielen Dank! –

+0

@DebbieGray Kein Problem, glücklich zu helfen :) –