是否可以访问easy_thumbs创建的图像的URL?
我有一个模型,其中ImageField
和ModelForm
匹配。
# models.py
class ModelWithAnImage(models.Model):
image = ThumbnailerImageField(
upload_to='images',
)
关注documentation我在上传图片时使用信号生成两个拇指。
# somewherethatdefinitelygetsloaded.py
from easy_thumbnails.signals import saved_file
from easy_thumbnails.signal_handlers import generate_aliases_global
saved_file.connect(generate_aliases_global)
这样可以正常工作但是可以访问那些拇指的网址吗?
model_with_an_image.image.url
会返回原始图片(正如您所期望的那样)。
目的是通过AJAX将拇指网址发送到外部来源,这样{% thumbnail %}
目前无法帮助我。
# requirements.txt
Django==1.5.1
Pillow==2.0.0
boto==2.9.0
django-storages==1.1.8
easy-thumbnails==1.2
答案 0 :(得分:2)
文档指向thumbnail_url
模板过滤器,该过滤器可以返回模板中的thumnail的URL。
您可以在视图(或其他任何地方)中将模板过滤器称为真实函数,它应该像在模板中一样精细,例如:
from easy_thumbnails.templatetags.thumbnail import thumbnail_url
thumbnail_url = thumbnail_url(model_with_an_image, 'small')
在幕后,过滤器只调用get_thumbnailer
,所以你也可以写:
thumbnailer = get_thumbnailer(model_with_an_image)
thumbnailer.generate = False # so a not generate a thumb if sthg went wrong
thumbnail = thumbnailer.get_thumbnail(thumbnail_options)
# do stuff with thumbnail.url