mirror of
https://github.com/HamzaSha1/zod-backend.git
synced 2025-07-16 02:16:16 +00:00
changes in article update api and get image url method
This commit is contained in:
@ -33,7 +33,8 @@ class ArticleCardSerializer(serializers.ModelSerializer):
|
||||
|
||||
def create(self, validated_data):
|
||||
validated_data['image_url'] = get_image_url(validated_data)
|
||||
article_card = ArticleCard.objects.create(article_id='1', **validated_data)
|
||||
article = Article.objects.all().first()
|
||||
article_card = ArticleCard.objects.create(article=article, **validated_data)
|
||||
return article_card
|
||||
|
||||
|
||||
@ -148,11 +149,13 @@ class ArticleSerializer(serializers.ModelSerializer):
|
||||
ArticleCard.objects.create(article=instance, **card_data)
|
||||
ArticleCard.objects.filter(id__in=prev_card, article=instance).delete()
|
||||
|
||||
prev_survey = list(ArticleSurvey.objects.filter(article=instance).values_list('id', flat=True))
|
||||
# Update or create survey sections
|
||||
for survey_data in article_survey:
|
||||
survey_id = survey_data.get('id', None)
|
||||
options_data = survey_data.pop('options')
|
||||
if survey_id:
|
||||
prev_survey.remove(survey_id)
|
||||
survey = ArticleSurvey.objects.get(id=survey_id, article=instance)
|
||||
survey.question = survey_data.get('question', survey.question)
|
||||
survey.save()
|
||||
@ -171,6 +174,7 @@ class ArticleSerializer(serializers.ModelSerializer):
|
||||
else:
|
||||
option_data = pop_id(option_data)
|
||||
SurveyOption.objects.create(survey=survey, **option_data)
|
||||
ArticleSurvey.objects.filter(id__in=prev_survey, article=instance).delete()
|
||||
|
||||
return instance
|
||||
|
||||
|
@ -16,7 +16,9 @@ def pop_id(data):
|
||||
|
||||
|
||||
def get_image_url(data):
|
||||
if 'image' in data and data['image'] is not None:
|
||||
if 'image_url' in data:
|
||||
return data['image_url']
|
||||
elif 'image' in data and data['image'] is not None:
|
||||
image = data.pop('image')
|
||||
filename = f"{ARTICLE_CARD_IMAGE_FOLDER}/{image.name}"
|
||||
# upload image on ali baba
|
||||
|
Reference in New Issue
Block a user