Django Admin Sorl-Thumbnail链接

时间:2013-11-06 05:33:55

标签: python html django django-admin sorl-thumbnail

我在img标记周围添加html A标记时遇到问题。当我添加带有变量的A标签时,它会停止在Django Admin中显示图像,但如果没有A标签中的变量则显示图像。我似乎无法弄清楚这一点,而且可能不会被sorl-thumbnail支持吗?

* UPDATE 现在尝试使用不同的缩略图大小传递两个变量,但它没有做任何事情。我正在使用Django Admin中的定义。

def screenshot_img(self, obj):
    if obj.screenshot:

            s = get_thumbnail(obj.screenshot,"x200",crop='center', quality=99)
            b = get_thumbnail(obj.screeshot,"x500",crop='center', quality=99)                

            return u'<a href="/im_troubleticket/media/%b"><img src="/im_troubleticket/media/%s"></a>' % (s, b)
    else:
            return u'No image'


screenshot_img.short_description = 'Picture'
screenshot_img.allow_tags = True

1 个答案:

答案 0 :(得分:1)

您在字符串中使用了两次变量,因此需要提供两次:

return u'<a href="/im_troubleticket/media/%s"><img src="/im_troubleticket/media/%s"></a>' % (s, s)
编辑:您的代码中有两个新错误:首先,您拼错了obj.screenshot。其次,字符串中的占位符表示数据的类型,而不是变量的名称。见Python String Formatting。如果使用描述性变量名称,则不太可能将%s中的s与变量名称混淆。

thumb_small = get_thumbnail(obj.screenshot,"x200",crop='center', quality=99)
thumb_large = get_thumbnail(obj.screenshot,"x500",crop='center', quality=99)                

return u'<a href="/im_troubleticket/media/%s"><img src="/im_troubleticket/media/%s"></a>' % (thumb_small, thumb_large)