在django cms覆盖占位符?

时间:2011-04-11 09:34:08

标签: django plugins placeholder django-cms

嘿我在我的一些自定义cms应用程序中使用django 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 %}这样做的目的是我可以指定不同的过滤器,如truncatewords等,因为我不想将它应用于每个使用文本插件的占位符!

希望足够清楚!欢呼任何帮助!

1 个答案:

答案 0 :(得分:0)

如果您使用占位符字段,则必须检查placeholder.slot,同时请注意{% if placeholder.slot == "info" %}似乎比ifequal更好:D