有人有使用ImageKit管理缩略图的经验吗?
我目前在我的models.py中有以下内容:
class Item(models.Model):
id = models.AutoField(primary_key=True)
owner = models.ForeignKey(
get_user_model(),
on_delete=models.SET_NULL,
null=True,
blank=True
)
image = ProcessedImageField(
upload_to=image_upload,
blank=True,
validators=[validate_image],
format='JPEG',
help_text="Max file size is 3 MB."
)
image_thumbnail = ImageSpecField(
source='image',
processors=[ResizeToFill(50, 50)],
format='JPEG',
options={'quality': 60}
)
我想重命名缩略图并将其存储在一个特定的文件夹中(而不是ImageKit默认的 CACHE/images/ 文件夹),但不知道如何做到这一点(向缩略图添加“upload_to”会给我一个错误)。所有的帮助非常感谢!谢谢你,谢谢!
2条答案
按热度按时间kqhtkvqz1#
根据文档:
另一方面,ImageSpecFields是虚拟的-它们不向数据库添加字段,也不需要数据库。由于很多原因,这很方便,但这意味着需要根据源映像和规范以编程方式构造映像文件的路径。
如果您不希望文件存储在缓存文件夹中,则可能只想坚持使用ProcessedImageField。
ecbunoof2#
在设置文件中,如果设置:
则图像将被保存在原始图像所在的同一文件夹的子文件夹中。而不是将其存储在/CACHE/images/文件夹中。