Skip to content
Snippets Groups Projects
Commit 60bb9991 authored by Tomáš's avatar Tomáš
Browse files

[ADD] wip - RSS feed for the main page

parent 4d3a0b99
No related branches found
No related tags found
2 merge requests!690Release,!689Add RSS feed to main website
Pipeline #10938 passed
from django.contrib.syndication.views import Feed
from django.shortcuts import render
from django.urls import reverse
from main.models import MainArticlesPage, MainArticlePage
class LatestArticlesFeed(Feed):
def get_object(
self: LatestArticlesFeed,
request,
title: str
) -> MainArticlesPage:
return MainArticlesPage.objects.get(title=title)
def title(
self: LatestArticlesFeed,
obj: MainArticlesPage
) -> str:
return obj.title
def link(
self: LatestArticlesFeed,
obj: MainArticlesPage
) -> str:
return obj.get_full_url()
def description(
self: LatestArticlesFeed,
obj: MainArticlesPage
) -> str:
return obj.perex
def items(
self: LatestArticlesFeed,
obj: MainArticlesPage
) -> list:
return obj.get_children().type(MainArticlePage)[:32]
def item_title(
self: LatestArticlesFeed,
obj: MainArticlePage
) -> str:
return obj.title
def item_description(
self: LatestArticlesFeed,
item: MainArticlePage
):
return render(
None,
"main/feed_item_description.html",
{"item": item},
)
def item_link(
self: LatestArticlesFeed,
item: MainArticlePage
) -> str:
return item.get_full_url()
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<a href="{{ target_url }}"> <a href="{{ target_url }}">
{{ self.title }} {{ self.title }}
</a> </a>
</h1> </h2>
<div class="font-light text-sm break-words"> <div class="font-light text-sm break-words">
{{ self.text | default_if_none:'' | richtext }} {{ self.text | default_if_none:'' | richtext }}
</div> </div>
......
{% for block in item.content %}
{% include_block block %}
{% endfor %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment