访问模板中的自定义缩略图选项

时间:2018-01-17 19:55:52

标签: django django-cms django-filer easy-thumbnails

在启用了Filer的Django CMS项目中,Filer的Admin仪表板允许您创建自定义缩略图选项,类似于使用简易缩略图定义别名。

如何在模板中访问这些选项?

{{ obj.image.thumbnails }}允许我从Filer包中的DEFAULT_THUMBNAILS中定义的abstract.py中选择一个,例如admin_tiny_icon,但我无法选择我的生活想出了如何访问前端定义的这些自定义选项。

在为{{ MEDIA_ROOT }}添加新图像时,这些自定义缩略图选项也不会在DEFAULT_THUMBNAILS中自动创建缩略图图像。

1 个答案:

答案 0 :(得分:1)

您可以创建自己的模板标签以获得所需的缩略图选项,如下所示:

// utils_tags.py

from django.template import Library

from filer.models import ThumbnailOption

register = Library()


@register.simple_tag
def get_thumbnail_option(name, filerimage):
    option = ThumbnailOption.objects.filter(name=name).first()
    if option:
        thumbnailer = filerimage.easy_thumbnails_thumbnailer
        return thumbnailer.get_thumbnail(option.as_dict)
    return filerimage

然后你可以在模板中使用它:

{% load utils_tags %}

{% get_thumbnail_option "Custom thumbnail name" obj.image as thumb %}