概念:RSS和Atom都是基于XML的格式,你可以用它来提供有关你站点内容的自动更新的feed。了解更多关于RSS的可以访问http://www.whatisrss.com/, 更多Atom的信息可以访问 http://www.atomenabled.org/.
为自己的博客添加一个订阅源:
(1)首先建立一个Feed类,这个Feed类提供了源所需要的数据:title,link,description
from django.core.urlresolvers import reverse
from django.contrib.syndication.views import Feed
from blog.models import *
class LatestEntries(Feed):
title = "wuchl.com site news"
link = "/blog/list/"
description = "Updates on changes and additions to wuchl.com."
# RSS源显示的内容
def items(self):
bloger = Blog.objects.filter(blog_name__icontains='dean')[0]
articles = Article.objects.filter(Blog=bloger).all().order_by('-last_update_time')[:3]
return articles
def item_title(self, item):
return item.title
def item_description(self, item):
return item.summary
# item_link is only needed if NewsItem has no get_absolute_url method.
def item_link(self, item):
return reverse('listdetail', args=[item.id])
扯一个题外话:title,link,description 在哪里显示的问题,,贴张图就知道了:点击 wuchl.com site news 就是link了
(2)配置一下url.py
from feed import *
urlpatterns = [
......
url(r'^feeds/', LatestEntries(), name='feeds'),
]
OK,大功告成!