Skip to content
Snippets Groups Projects
Verified Commit 61ab88ec authored by jindra12's avatar jindra12
Browse files

Add conversion

parent e6480fbc
No related branches found
No related tags found
2 merge requests!816Release,!801Prepare basic shared tags
......@@ -421,31 +421,68 @@ class ArticlesMixin(models.Model):
results = results.order_by("union_date")
evaluated = list(results)
evaluated = list(
results
) # We MUST eval here since we can't turn values() into concrete class instances in QuerySet after union
mapped_to_real_values = list(
if source is SharedArticleTypes.DISTRICT:
return list(
map(
lambda unioned: {
"id": unioned["union_id"],
"page_ptr_id": unioned["union_page_ptr_id"],
"perex": unioned["union_perex"],
"date": unioned["union_date"],
"author": unioned["union_author"],
"image_id": unioned["union_image_id"],
"search_image_id": unioned["union_search_image_id"],
"content": unioned["union_content"],
"author_page_id": unioned["union_author_page_id"],
"region": unioned["union_author_page_id"],
"article_type": unioned["union_article_type"],
"is_black": unioned["union_is_black"],
"thumb_image_id": unioned["union_thumb_image_id"],
"shared": unioned["shared"],
},
lambda unioned: DistrictArticlePage(
id=unioned["union_id"],
page_ptr_id=unioned["union_page_ptr_id"],
perex=unioned["union_perex"],
date=unioned["union_date"],
author=unioned["union_author"],
image_id=unioned["union_image_id"],
search_image_id=unioned["union_search_image_id"],
content=unioned["union_content"],
author_page_id=unioned["union_author_page_id"],
is_black=unioned["union_is_black"],
thumb_image_id=unioned["union_thumb_image_id"],
),
evaluated,
)
)
return mapped_to_real_values
if source is SharedArticleTypes.UNIWEB:
return list(
map(
lambda unioned: UniwebArticlePage(
id=unioned["union_id"],
page_ptr_id=unioned["union_page_ptr_id"],
perex=unioned["union_perex"],
date=unioned["union_date"],
author=unioned["union_author"],
image_id=unioned["union_image_id"],
search_image_id=unioned["union_search_image_id"],
content=unioned["union_content"],
),
evaluated,
)
)
if source is SharedArticleTypes.MAIN:
return list(
map(
lambda unioned: MainArticlePage(
id=unioned["union_id"],
page_ptr_id=unioned["union_page_ptr_id"],
perex=unioned["union_perex"],
date=unioned["union_date"],
author=unioned["union_author"],
image_id=unioned["union_image_id"],
search_image_id=unioned["union_search_image_id"],
content=unioned["union_content"],
author_page_id=unioned["union_author_page_id"],
region=unioned["union_author_page_id"],
article_type=unioned["union_article_type"],
is_black=unioned["union_is_black"],
thumb_image_id=unioned["union_thumb_image_id"],
),
evaluated,
)
)
def get_article_page_by_slug(self, slug: str):
articles = self.append_all_shared_articles()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment