Add title method

This commit is contained in:
littlewolf 2019-10-20 19:08:14 +03:00
parent 8965cf0460
commit 0a24b80917
2 changed files with 11 additions and 12 deletions

View File

@ -4,23 +4,18 @@ from news.models import NewsType
from django.db.models import Value, IntegerField, F
from pprint import pprint
def transfer_news():
news_type, _ = NewsType.objects.get_or_create(name="News")
print(news_type)
#
queryset = PageTexts.objects.all().annotate(news_type=Value(news_type.id, output_field=IntegerField()))
queryset = queryset.annotate(attachment_file_name=F('page__attachment_file_name'))
queryset = queryset.annotate(template=F('page__template'))
pprint(vars(queryset.first()))
print("===================================================================================")
#
serialized_data = NewsSerializer(queryset, many=True)
# data = serialized_data.data
# pprint(serialized_data.data)
for serialized_obj in serialized_data.data:
pprint(serialized_obj)
break
serialized_data = NewsSerializer(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 = {

View File

@ -6,6 +6,7 @@ class NewsSerializer(serializers.ModelSerializer):
image_url = serializers.SerializerMethodField()
preview_image_url = serializers.SerializerMethodField()
description = serializers.SerializerMethodField()
title = serializers.SerializerMethodField()
class Meta:
model = News
@ -20,6 +21,9 @@ class NewsSerializer(serializers.ModelSerializer):
"news_type"
)
def get_title(self, obj):
return f'{"en-GB": {obj.title}}'
def get_description(self, obj):
if not hasattr(obj, "body"):
return ""