我正在运行带有sorl-thumbnail和许多远程图像的django应用程序(sorl从外部源加载图像)。
理想情况下,我想检查sorl是否已经在我的模板中缓存了图像,如果没有,请使用ajax加载图像。
阅读文档后,我发现了exist
方法似乎总是返回true
{% thumbnail item.image "160x200" crop="center" as im %}
{% if im.exists %}
<img src="{{ im.url }}">
{% else %}
<!-- load image with ajax -->
{% endif %}
{% endthumbnail %}
是否有一种方法可用于检查图像是否已在模板中缓存?
答案 0 :(得分:0)
我最终为我的模型使用了一种方法。
这是使用昂贵的%LIKE%的一些脏的原始SQL。
def has_image_cached(self):
from django.db import connection
cursor = connection.cursor()
cursor.execute("SELECT * FROM thumbnail_kvstore WHERE value LIKE %s",['%'+self.imageurl+'%'])
row = cursor.fetchone()
if row is None:
return False
return True