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

Finish district articles page

parent fcbeb44c
Branches
No related tags found
2 merge requests!816Release,!801Prepare basic shared tags
Pipeline #13789 passed
...@@ -585,7 +585,7 @@ class DistrictArticlesPage( ...@@ -585,7 +585,7 @@ class DistrictArticlesPage(
tag = None tag = None
try: try:
tag = Tag.objects.filter(tag__slug=request.GET["tag"])[0].tag tag = Tag.objects.filter(slug=request.GET["tag"])[0]
article_page_qs = self.append_all_shared_articles( article_page_qs = self.append_all_shared_articles(
DistrictArticlePage.objects.filter( DistrictArticlePage.objects.filter(
id__in=site_article_ids, tags__slug=tag.slug id__in=site_article_ids, tags__slug=tag.slug
...@@ -603,7 +603,7 @@ class DistrictArticlesPage( ...@@ -603,7 +603,7 @@ class DistrictArticlesPage(
return { return {
"article_page_list": Paginator( "article_page_list": Paginator(
article_page_qs.order_by("-date"), article_page_qs,
self.max_items, self.max_items,
).get_page(request.GET.get("page")), ).get_page(request.GET.get("page")),
"tag": tag, "tag": tag,
...@@ -616,10 +616,11 @@ class DistrictArticlesPage( ...@@ -616,10 +616,11 @@ class DistrictArticlesPage(
""" """
return self.search_tags_by_article_id( return self.search_tags_by_article_id(
site_article_ids, site_article_ids,
additional_query=lambda query: query.annotate(count=models.Count("slug")), custom_query_to_values=lambda query: query.annotate(
custom_query_to_values=lambda query: query.order_by("slug").values( count=models.Count("slug")
"name", "slug", "count" )
), .order_by("slug")
.values("name", "slug", "count"),
) )
......
...@@ -465,7 +465,7 @@ class ArticlesMixin(models.Model): ...@@ -465,7 +465,7 @@ class ArticlesMixin(models.Model):
self, previous_query: models.QuerySet | None = None, filter=None self, previous_query: models.QuerySet | None = None, filter=None
): ):
results = self.append_all_shared_articles_query(previous_query, filter) results = self.append_all_shared_articles_query(previous_query, filter)
return results.values_list("id", Flat=True) return results.values_list("id", flat=True)
def append_all_shared_articles( def append_all_shared_articles(
self, previous_query: models.QuerySet | None = None, filter=None self, previous_query: models.QuerySet | None = None, filter=None
...@@ -557,12 +557,13 @@ class ArticlesMixin(models.Model): ...@@ -557,12 +557,13 @@ class ArticlesMixin(models.Model):
union = district_tags.union(uniweb_tags).union(main_tags) union = district_tags.union(uniweb_tags).union(main_tags)
if custom_query_to_values is not None:
union = custom_query_to_values(union)
return union
else:
union = union.values_list("id") union = union.values_list("id")
return Tag.objects.filter(id__in=union) tag_query = Tag.objects.filter(id__in=union)
if custom_query_to_values is not None:
tag_query = custom_query_to_values(tag_query)
return tag_query
def search_tags_by_tag_name(self, tag: str): def search_tags_by_tag_name(self, tag: str):
return { return {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment