Django sorl占位符默认头像图像

时间:2014-03-23 15:26:10

标签: django django-models sorl-thumbnail

我在django中有一个项目,使用sorl-thumbnail生成缩略图。我想这样做,以便如果用户个人资料尚未添加头像图像,它将显示默认照片。

我尝试在我的UserProfile模型中执行此操作,但在默认存在时上传新图像时出现问题

avatar = models.ImageField(upload_to='blah', default='path/to/my/default/image.jpg')

我知道我可以在所有模板中使用if语句,但这会在各处重复。如

{% ifequal object.avatar None %}
    <img src="DEFAULT_IMAGE" />
{% else %}
    display image
{% endifequal %}

当django中已存在默认图像时,显示默认图像的最佳做法是什么?

1 个答案:

答案 0 :(得分:3)

正如加布里埃尔所说,你可以使用空标签。

{% thumbnail object.avatar "100x100" as im %}
    <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% empty %}
    <img src="DEFAULT_IMAGE">
{% endthumbnail %}