fix set uploaded files #2

This commit is contained in:
Kuroshini 2020-01-31 00:16:08 +03:00
parent 47f8905832
commit 10620ac881

View File

@ -748,21 +748,21 @@ class MenuBackOfficeSerializer(serializers.ModelSerializer):
def update(self, instance, validated_data):
uploaded_files_ids = validated_data.pop('uploads')
if len(uploaded_files_ids):
uploaded_files = list(models.MenuFiles.objects.filter(id__in=uploaded_files_ids))
uploaded_files_ids = list(models.MenuFiles.objects.filter(id__in=uploaded_files_ids))
establishment_kwargs = validated_data.pop('establishment')
establishment = get_object_or_404(models.Establishment, **establishment_kwargs)
validated_data['establishment'] = establishment
instance = super().update(instance, validated_data)
instance.uploads.set(uploaded_files)
instance.uploads.set(uploaded_files_ids)
return instance
def create(self, validated_data):
uploaded_files_ids = validated_data.pop('uploads')
if len(uploaded_files_ids):
uploaded_files = list(models.MenuFiles.objects.filter(id__in=uploaded_files_ids))
uploaded_files_ids = list(models.MenuFiles.objects.filter(id__in=uploaded_files_ids))
establishment_kwargs = validated_data.pop('establishment')
establishment = get_object_or_404(models.Establishment, **establishment_kwargs)
validated_data['establishment'] = establishment
instance = models.Menu.objects.create(**validated_data)
instance.uploads.set(uploaded_files)
instance.uploads.set(uploaded_files_ids)
return instance