From b2ed0760d86fdf057a7e476f7aab3b3f7e63f53c Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Tue, 6 Nov 2018 09:30:30 +0000 Subject: [PATCH] blog: Render feed.xml directly Signed-off-by: Michael Tremer --- src/web/blog.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/web/blog.py b/src/web/blog.py index e20e3f89..375adfc3 100644 --- a/src/web/blog.py +++ b/src/web/blog.py @@ -41,10 +41,8 @@ class AuthorHandler(auth.CacheMixin, base.BaseHandler): class FeedHandler(base.BaseHandler): def get(self): posts = self.backend.blog.get_newest(limit=10) - - # Render the feed - feed = self.render_string("blog/feed.xml", posts=posts, - now=email.utils.formatdate()) + if not posts: + raise tornado.web.HTTPError(404) # Allow this to be cached for 10 minutes self.set_expires(600) @@ -52,8 +50,9 @@ class FeedHandler(base.BaseHandler): # Set correct content type self.set_header("Content-Type", "application/rss+xml") - # Deliver content - self.finish(feed) + # Render the feed + self.render("blog/feed.xml", posts=posts, + now=email.utils.formatdate()) class PostHandler(auth.CacheMixin, base.BaseHandler): -- 2.47.3