Skip to content
Snippets Groups Projects

Fixed weird bug with versatile imgae field

Merged Agate requested to merge fixed-broken-playlists into develop
1 file
+ 7
0
Compare changes
  • Side-by-side
  • Inline
@@ -107,6 +107,13 @@ class PlaylistSerializer(serializers.ModelSerializer):
@@ -107,6 +107,13 @@ class PlaylistSerializer(serializers.ModelSerializer):
covers = []
covers = []
max_covers = 5
max_covers = 5
for plt in plts:
for plt in plts:
 
if not hasattr(plt.track.album.cover, "crop"):
 
# In some rare situations, we end up with the following stack strace:
 
# AttributeError: 'VersatileImageFieldFile' object has no attribute 'crop'
 
# I tend to thing our complex prefetch logic is troubling for versatile
 
# image field, so wi initialize the missing attribute by hand, cf
 
# https://github.com/respondcreate/django-versatileimagefield/blob/1.9/versatileimagefield/mixins.py#L108
 
plt.track.album.cover.build_filters_and_sizers((0.5, 0, 5), False)
url = plt.track.album.cover.crop["200x200"].url
url = plt.track.album.cover.crop["200x200"].url
if url in covers:
if url in covers:
continue
continue
Loading