From ce5bdf7de4fb4803504f2027db3576787bebb8f1 Mon Sep 17 00:00:00 2001
From: "jindra12.underdark" <jindra12.underdark@gmail.com>
Date: Sat, 15 Jul 2023 19:25:17 +0200
Subject: [PATCH] Creates fake pages based on query

#210
---
 shared/models.py | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/shared/models.py b/shared/models.py
index d1e12c9c9..3383c1d4f 100644
--- a/shared/models.py
+++ b/shared/models.py
@@ -296,8 +296,8 @@ class ArticlesMixin(models.Model):
 
         fields_reducer = (
             lambda assigned, field: assigned
-            if field.name is "shared"
-            else assigned | {f"union_{field.name}": F(field.name)}
+            if field.column == "shared"
+            else assigned | {f"union_{field.column}": F(field.column)}
         )
         setup_fields_order = lambda orderBy, orderFrom: reduce(
             lambda orderTo, field: orderTo | {f"{field}": orderFrom[field]},
@@ -306,7 +306,7 @@ class ArticlesMixin(models.Model):
         )
 
         main_fields = reduce(fields_reducer, main_meta_fields, {}) | {
-            "union_thumb_image": F("search_image"),
+            "union_thumb_image_id": F("search_image_id"),
         }
 
         district_fields = setup_fields_order(
@@ -322,7 +322,7 @@ class ArticlesMixin(models.Model):
             main_fields,
             reduce(fields_reducer, uniweb_meta_fields, {})
             | {
-                "union_author_page": Value(
+                "union_author_page_id": Value(
                     None,
                     output_field=models.ForeignKey(
                         DistrictArticlePage, blank=True, on_delete=models.SET_NULL
@@ -331,7 +331,7 @@ class ArticlesMixin(models.Model):
                 "union_region": Value("", models.CharField()),
                 "union_article_type": Value(0, models.PositiveSmallIntegerField()),
                 "union_is_black": Value(False, models.BooleanField()),
-                "union_thumb_image": F("search_image"),
+                "union_thumb_image_id": F("search_image_id"),
             },
         )
 
@@ -420,13 +420,13 @@ class ArticlesMixin(models.Model):
         )  # We MUST eval here since we can't turn values() into concrete class instances in QuerySet after union
 
         assign_to_model = lambda unioned: lambda assignment, field: assignment | {
-            field.name: unioned[f"union_{field.name}"]
+            field.column: unioned[f"union_{field.column}"]
         }
 
         if isinstance(self, DistrictArticlesPage):
             return list(
                 map(
-                    lambda unioned: DistrictArticlePage.objects.create(
+                    lambda unioned: DistrictArticlePage(
                         **reduce(assign_to_model(unioned), district_meta_fields, {})
                     ),
                     evaluated,
-- 
GitLab