我正在尝试对用户上传的静态文件设置权限检查。为此,我使用请求的路径来获取代表文件的媒体对象。我还使用sorl-thumbnail库来制作缩略图。我使用get_thumbnail()
函数从原始上传图片的 url 中获取缓存的缩略图。有没有办法进行逆运算?从缓存的图像 url,我可以有原始 url 吗?就像是:
picture = Image.objects.get(url=get_original('/cached/url/of/the/thumbnail/image'))
我正在尝试对用户上传的静态文件设置权限检查。为此,我使用请求的路径来获取代表文件的媒体对象。我还使用sorl-thumbnail库来制作缩略图。我使用get_thumbnail()
函数从原始上传图片的 url 中获取缓存的缩略图。有没有办法进行逆运算?从缓存的图像 url,我可以有原始 url 吗?就像是:
picture = Image.objects.get(url=get_original('/cached/url/of/the/thumbnail/image'))
没有默认方法可以做到这一点。Sorl thumbnail 通过创建原始文件名的哈希以及您指定的选项来生成新缩略图的路径,因此没有简单的方法来反转该操作。您可以创建一个数据库表,将原始图像文件映射到您当前的缩略图,并在每次尺寸等更改时保持最新。