Перекрывающиеся плахолдеры в django cms?
Привет, я использую поля-заполнители из django cms в некоторых моих пользовательских приложениях cms. По сути, я пытаюсь добиться определенных стилей и фильтров для одних и тех же полей-заполнителей, используемых в разных шаблонах.
например, если у меня есть модель для вакансий, которая выглядит примерно так:
from django.db import models
from cms.models.fields import PlaceholderField
# Create your models here.
class Vaccancy(models.Model):
title = models.CharField(max_length=255)
slug = models.SlugField(max_length=255, unique = True)
ref_number = models.CharField(max_length=255)
info = PlaceholderField('info')
active = models.BooleanField(default=True, verbose_name="posistion active?")
и другая модель, которая также использует поле заполнителя аналогичным образом. Я надеялся, что смогу переопределить шаблон tex.html и затем использовать некоторую условную логику для определения имени заполнителя следующим образом. {% ifequal placeholder "info" %}
{{ body|truncatewords:200|safe }}
{% endifequal %}
Цель этого состоит в том, чтобы я мог указать различные фильтры, такие как усеченные слова и т. д., так как я не хочу применять это к каждому заполнителю, который использует текстовый плагин!
надеюсь, что это было достаточно ясно! ура за любую помощь!
1 ответ
Если вы используете поля-заполнители, вы должны проверить placeholder.slot
Также обратите внимание, что {% if placeholder.slot == "info" %}
кажется немного лучше, чем ifequal
:D