我正在建立一个拍卖网站(在Python / Django中)。用户可以为存储在外部站点中的产品图像提供URL,例如存储在Photobucket中的图像。
所以我的计划是,在展示特定拍卖时,我会链接到外部产品图片。但是,当我显示拍卖列表(例如搜索结果页面)时,我需要显示缩略图
我可以看到两个选项:
也可以使用外部托管的图像作为缩略图。为这些图像指定标准化的小尺寸,以将它们“转换”为缩略图。我该怎么做 - 我在CSS或其他地方指定缩略图大小?什么是好大小?任何代码示例都会非常感激,因为我对CSS或HTML不太熟悉。
当用户向外部图像提交URL时,将该图像下载到我自己的服务器并将其转换为缩略图。我可以使用任何Python / Django软件下载远程图像,然后将其变成缩略图吗?
任何一般性建议表示赞赏。我倾向于选项(1)因为我只有一个便宜的VPS而且选项(1)的资源密集程度要低得多。有什么理由不是个好主意吗?
感谢。
答案 0 :(得分:2)
两者都有效。
我猜测,如果你搜索了一下,你甚至可以找到一个图像缩放器作为REST服务,所以你甚至不必自己实现它(即使它是微不足道的) - 你可以只是将url连接到某个resizer服务的url并完成它。
**编辑**
一些谷歌搜索发现了这些工具:
答案 1 :(得分:1)
我相当确定我最近看到了类似于此的内容,您可以将Django模型字段指向远程图像URL并完成缩略图,但您也可以将其上传图像文件也是。如果我现在无法找到,那就太累了。
啊哈哈!也许是sorl-thumbnail。给出这个例子:{% thumbnail "http://www.aino.se/media/i/logo.png" "40x40" crop="80% top" as im %}
<img src="{{ im.url }}">
{% endthumbnail %}
假设你可以用模型中的URL字段(而不是ImageField)替换文字字符串(例如lot.remoteimageurl),那么我认为就是这样。
sorl-thumbnail将为您处理缩略图创建和缓存。