网站增加RSS订阅功能
Web开发 . 2019/11/27发布 . shanyonggang_web . 我要评论 . 235阅读

导读

博客提供 RSS 订阅应该是标配,这样读者就可以通过一些聚合阅读工具订阅你的博客,时时查看是否有文章更新,而不必每次都跳转到博客上来查看。现在我们就来为博客添加 RSS 订阅功能,关于RSS具体可以参考百度说明RSS订阅,django提供了一个高级联合供稿生成框架,该框架使创建RSS和Atom供稿变得容易,详细可以参考django文档,下面博主说下自己的代码实现,其实很简单,均参考官方文档。

代码

首先在自己的APP下创建一个feeds.py文件,其代码为:

from django.contrib.syndication.views import Feed
from .models import ArticlePost

class AllPostsRssFeed(Feed):
    # 显示在聚合阅读器上的标题
    title = "大圣的专属空间"
    # 通过聚合阅读器跳转到网站的地址
    link = "/"
    # 显示在聚合阅读器上的描述信息
    description = "大圣的专属空间更新内容RSS"
    # 需要显示的内容条目
    def items(self):
        return ArticlePost.objects.all()
    # 聚合器中显示的内容条目的标题
    def item_title(self, item):
        return '[%s] %s' % (item.column, item.title)
    # 聚合器中显示的内容条目的描述
    def item_description(self, item):
        return item.body

在项目的主urls.py中添加如下代码:

# RSS订阅
from index.feeds import AllPostsRssFeed
urlpatterns = [
    # 记得在顶部引入 AllPostsRssFeed
    path('all/rss/', AllPostsRssFeed(), name='rss'),
] 

修改前端模版文件

<a href="{% url 'rss' %}"><span class="fas fa-rss"></span></a>

这样就可以实现RSS订阅功能,如:RSS订阅


  • 有疑问请在下方评论区留言,我会尽快回复。
  • Email私信我: 511248513@qq.com 或添加博主 微信
本文作者:shanyonggang_web
发布时间:2019年11月27日 22:48
许可协议: 署名-非商业性使用 4.0 国际许可协议
知识共享许可协议     转载请保留原文链接及作者
正在加载今日诗词....
您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击下面的


登录 后回复

当前暂无评论,点击登录来做第一个吃螃蟹的人吧!