diff --git a/apps/gallery/migrations/0002_auto_20191023_1207.py b/apps/gallery/migrations/0002_auto_20191023_1207.py new file mode 100644 index 00000000..64b93720 --- /dev/null +++ b/apps/gallery/migrations/0002_auto_20191023_1207.py @@ -0,0 +1,20 @@ +# Generated by Django 2.2.4 on 2019-10-23 12:07 + +from django.db import migrations +import easy_thumbnails.fields +import utils.methods + + +class Migration(migrations.Migration): + + dependencies = [ + ('gallery', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='image', + name='image', + field=easy_thumbnails.fields.ThumbnailerImageField(max_length=255, upload_to=utils.methods.image_path, verbose_name='Image file'), + ), + ] diff --git a/apps/gallery/models.py b/apps/gallery/models.py index 022a24e0..aec1c119 100644 --- a/apps/gallery/models.py +++ b/apps/gallery/models.py @@ -9,7 +9,7 @@ class Image(ProjectBaseMixin, ImageMixin): """Image model.""" image = ThumbnailerImageField(upload_to=image_path, - verbose_name=_('Image file')) + verbose_name=_('Image file'), max_length=255) class Meta: """Meta class.""" diff --git a/apps/gallery/transfer_data.py b/apps/gallery/transfer_data.py new file mode 100644 index 00000000..e008f1f0 --- /dev/null +++ b/apps/gallery/transfer_data.py @@ -0,0 +1,21 @@ +from django.db.models import Value, IntegerField, F +from pprint import pprint +from gallery.models import Image +from transfer.models import MercuryImages +from transfer.serializers.gallery import ImageSerializer + + +def transfer_gallery(): + queryset = MercuryImages.objects.all() + + serialized_data = ImageSerializer(data=list(queryset.values()), many=True) + if serialized_data.is_valid(): + serialized_data.save() + else: + pprint(f"News serializer errors: {serialized_data.errors}") + + +data_types = { + "gallery": [transfer_gallery] +} + diff --git a/apps/transfer/management/commands/transfer.py b/apps/transfer/management/commands/transfer.py index 90c828d4..d4a1c213 100644 --- a/apps/transfer/management/commands/transfer.py +++ b/apps/transfer/management/commands/transfer.py @@ -14,7 +14,8 @@ class Command(BaseCommand): 'account', 'subscriber', 'recipe', - 'partner' + 'partner', + 'gallery' ] def handle(self, *args, **options): diff --git a/apps/transfer/serializers/gallery.py b/apps/transfer/serializers/gallery.py new file mode 100644 index 00000000..273dd703 --- /dev/null +++ b/apps/transfer/serializers/gallery.py @@ -0,0 +1,15 @@ +from rest_framework import serializers +from gallery.models import Image + + +class ImageSerializer(serializers.ModelSerializer): + attachment_file_name = serializers.CharField(source="image") + + class Meta: + model = Image + fields = ( + "attachment_file_name", + ) + + def create(self, validated_data): + return Image.objects.create(**validated_data)