Django - 在哪里编写易于缩略图的代码定制THUMBNAIL MAKER?

时间:2014-03-26 05:14:38

标签: python django easy-thumbnails

我正在使用精彩的Django插件处理easy-thumbnails项目,以生成图片的缩略图。我不喜欢缩略图的格式如下:

source.jpg.100x100_q80_crop_upscale.jpg

如果我的图片名为source.jpg,我更喜欢这样的内容:

source_thumb.jpg

在阅读插件的文档(http://easy-thumbnails.readthedocs.org/en/latest/ref/settings/)后,我发现有一个设置可以设置自定义THUMBNAIL_NAMER,这实际上是一个返回所需缩略图字符串的函数。

我的问题:

在我的项目中定义此功能的适当位置在哪里?我想维护一个逻辑清晰的项目结构,并且不确定在哪里放置这个功能。

非常感谢您的帮助:)

1 个答案:

答案 0 :(得分:1)

THUMBNAIL_NAMER是一个设置,默认为

THUMBNAIL_NAMER = 'easy_thumbnails.namers.default'

表示在easy_thumbnails包中default

中名为namers.py的方法

源代码:https://github.com/SmileyChris/easy-thumbnails/blob/master/easy_thumbnails/namers.py#L7

因此,如果您希望覆盖它,请在settings.py

THUMBNAIL_HELPER = '<myapp>.namers.default'

然后在myapp中包含INSTALLED_APPSnamers.py中最有意义的任何应用)中的此方法的覆盖定义(嗯,它可能是什么 - 只是一个例子)

由于它是缩略图,如果它是与用户的头像关联的缩略图,我会把它放在userprofile应用程序中。