27 lines
878 B
Python
27 lines
878 B
Python
"""Serializers for back office app advertisements"""
|
|
from main.serializers import PageBaseSerializer
|
|
|
|
|
|
class AdvertisementPageBaseSerializer(PageBaseSerializer):
|
|
"""Base serializer for linking page w/ advertisement."""
|
|
|
|
class Meta(PageBaseSerializer.Meta):
|
|
"""Meta class."""
|
|
|
|
PageBaseSerializer.Meta.extra_kwargs.update({
|
|
'advertisement': {'write_only': True},
|
|
'image_url': {'required': True},
|
|
'width': {'required': True},
|
|
'height': {'required': True},
|
|
})
|
|
|
|
|
|
class AdvertisementPageListCreateSerializer(AdvertisementPageBaseSerializer):
|
|
"""Serializer for linking page w/ advertisement."""
|
|
|
|
def create(self, validated_data):
|
|
"""Overridden create method."""
|
|
|
|
validated_data['advertisement'] = self.context.get('view').get_object()
|
|
return super().create(validated_data)
|