added field image_url to news list and collection list
This commit is contained in:
parent
6d95349a52
commit
4c448efc96
|
|
@ -7,12 +7,15 @@ from location import models as location_models
|
||||||
|
|
||||||
class CollectionSerializer(serializers.ModelSerializer):
|
class CollectionSerializer(serializers.ModelSerializer):
|
||||||
"""Collection serializer"""
|
"""Collection serializer"""
|
||||||
|
# RESPONSE
|
||||||
|
image_url = serializers.SerializerMethodField()
|
||||||
|
|
||||||
|
# COMMON
|
||||||
block_size = serializers.JSONField()
|
block_size = serializers.JSONField()
|
||||||
image = serializers.PrimaryKeyRelatedField(
|
|
||||||
queryset=gallery_models.Image.objects.all())
|
|
||||||
is_publish = serializers.BooleanField()
|
is_publish = serializers.BooleanField()
|
||||||
on_top = serializers.BooleanField()
|
on_top = serializers.BooleanField()
|
||||||
|
|
||||||
|
# REQUEST
|
||||||
start = serializers.DateTimeField(write_only=True)
|
start = serializers.DateTimeField(write_only=True)
|
||||||
end = serializers.DateTimeField(write_only=True)
|
end = serializers.DateTimeField(write_only=True)
|
||||||
filters = serializers.JSONField(write_only=True)
|
filters = serializers.JSONField(write_only=True)
|
||||||
|
|
@ -21,6 +24,9 @@ class CollectionSerializer(serializers.ModelSerializer):
|
||||||
country = serializers.PrimaryKeyRelatedField(
|
country = serializers.PrimaryKeyRelatedField(
|
||||||
queryset=location_models.Country.objects.all(),
|
queryset=location_models.Country.objects.all(),
|
||||||
write_only=True)
|
write_only=True)
|
||||||
|
image = serializers.PrimaryKeyRelatedField(
|
||||||
|
queryset=gallery_models.Image.objects.all(),
|
||||||
|
write_only=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = models.Collection
|
model = models.Collection
|
||||||
|
|
@ -30,6 +36,7 @@ class CollectionSerializer(serializers.ModelSerializer):
|
||||||
'start',
|
'start',
|
||||||
'end',
|
'end',
|
||||||
'image',
|
'image',
|
||||||
|
'image_url',
|
||||||
'is_publish',
|
'is_publish',
|
||||||
'on_top',
|
'on_top',
|
||||||
'filters',
|
'filters',
|
||||||
|
|
@ -39,6 +46,10 @@ class CollectionSerializer(serializers.ModelSerializer):
|
||||||
'block_size',
|
'block_size',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def get_image_url(self, obj):
|
||||||
|
"""Return absolute image URL"""
|
||||||
|
return obj.image.get_full_image_url(request=self.context.get('request'))
|
||||||
|
|
||||||
|
|
||||||
class CollectionItemSerializer(serializers.ModelSerializer):
|
class CollectionItemSerializer(serializers.ModelSerializer):
|
||||||
"""CollectionItem serializer"""
|
"""CollectionItem serializer"""
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ class NewsLocalizationMixinSerializer(serializers.ModelSerializer):
|
||||||
class NewsSerializer(NewsLocalizationMixinSerializer):
|
class NewsSerializer(NewsLocalizationMixinSerializer):
|
||||||
"""News serializer."""
|
"""News serializer."""
|
||||||
address = AddressSerializer()
|
address = AddressSerializer()
|
||||||
image = serializers.URLField(source='image.get_image_url')
|
image_url = serializers.SerializerMethodField()
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = models.News
|
model = models.News
|
||||||
|
|
@ -39,13 +39,17 @@ class NewsSerializer(NewsLocalizationMixinSerializer):
|
||||||
'playlist',
|
'playlist',
|
||||||
'address',
|
'address',
|
||||||
'is_highlighted',
|
'is_highlighted',
|
||||||
'image',
|
'image_url',
|
||||||
# Localized fields
|
# Localized fields
|
||||||
'title_trans',
|
'title_trans',
|
||||||
'subtitle_trans',
|
'subtitle_trans',
|
||||||
'description_trans',
|
'description_trans',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def get_image_url(self, obj):
|
||||||
|
"""Return absolute image URL"""
|
||||||
|
return obj.image.get_full_image_url(request=self.context.get('request'))
|
||||||
|
|
||||||
|
|
||||||
class NewsCreateUpdateSerializer(NewsSerializer):
|
class NewsCreateUpdateSerializer(NewsSerializer):
|
||||||
"""News update serializer."""
|
"""News update serializer."""
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user