This one is much simpler than the pages one, as there could be a lot of pages
19 lines
639 B
Python
19 lines
639 B
Python
from django.shortcuts import get_object_or_404
|
|
from django.utils.decorators import method_decorator
|
|
from django.views.decorators.cache import cache_page
|
|
from django.views.generic import RedirectView
|
|
|
|
from website.blog.models import BlogPostListPage
|
|
|
|
|
|
@method_decorator(cache_page(60 * 60), name="dispatch")
|
|
class PostsFeedView(RedirectView):
|
|
def get_redirect_url(self) -> str:
|
|
post_list = get_object_or_404(BlogPostListPage.objects.live())
|
|
return post_list.url + post_list.reverse_subpage("feed")
|
|
|
|
|
|
@method_decorator(cache_page(60 * 60), name="dispatch")
|
|
class AllPagesFeedView(RedirectView):
|
|
pattern_name = "feed"
|