gpt4 book ai didi

django - Django easy_thumbnails 的默认图像

转载 作者:行者123 更新时间:2023-12-04 23:52:48 26 4
gpt4 key购买 nike

我有一个带有 ImageField 的模型,我使用 easy_thumbnails (|thumbnail_url) 显示它。
我的问题是如果 ImageField 为空,如何显示默认图像?
我想在模型/ View 中使用这个逻辑,不是 在 html/模板中。

例如。:

DEFAULT_PICTURE = 'default.jpg'

def get_picture(self):
if self.picture:
return self.picture
else:
from DEFAULT_PICTURE

get_picture() 应该返回什么与easy_thumbnails 兼容的对象?
我试图创建一个新的 File 对象,比如 here ,但它没有用。
您能否提供一个返回现有文件以使用 easy_thumbnails 显示的工作示例?

最佳答案

克里斯 ( easy_thumbnails ) 回答 here ,以及 SO .

他创建一个新的 ImageFieldFile 的建议很好,但是 easy_thumbnails 仍然失败,因为新创建的 ImageFieldFile 有一个空实例。
所以要么设置instance = self :

DEFAULT_PICTURE = 'default.jpg'

def get_picture(self):
if self.picture:
return self.picture
else:
return ImageFieldFile(instance=self, field=FileField(), name=DEFAULT_PICTURE)

或更改 alias.py 第 116 行:
if not hasattr(target, 'instance'):
return None

应该...
if not hasattr(target, 'instance') or not target.instance:
return None

关于django - Django easy_thumbnails 的默认图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19956837/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com