Read only the image from the selected cache
Using the instance from the list of cache, the ORM read the image for all the linked cache which is unnecessary. Closes #13831
This commit is contained in:
@@ -158,7 +158,8 @@ class ImageMixin(_ImageMixin):
|
||||
raise ValueError(f"Invalid size {size}")
|
||||
for cache in self.cache:
|
||||
if (cache.width, cache.height) == size:
|
||||
return cache.image
|
||||
# re-instantiate to fetch only one image
|
||||
return cache.__class__(cache.id).image
|
||||
with Transaction().new_transaction():
|
||||
cache = self._store_cache(size, self._resize(size))
|
||||
# Save cache only if record is already committed
|
||||
|
||||
@@ -99,7 +99,8 @@ class Avatar(ImageMixin, ResourceMixin, ModelSQL):
|
||||
raise ValueError("Invalid size")
|
||||
for avatar in self.cache:
|
||||
if avatar.size == size:
|
||||
return avatar.image
|
||||
# re-instantiate to fetch only one image
|
||||
return avatar.__class__(avatar.id).image
|
||||
if not self.image:
|
||||
return None
|
||||
if PIL:
|
||||
|
||||
Reference in New Issue
Block a user