1
from django.contrib.syndication.feeds import FeedDoesNotExist
2
from django.core.exceptions import ObjectDoesNotExist
3
from django.contrib.sites.models import Site
4
from django.contrib.syndication.feeds import Feed
5
from django.core.urlresolvers import reverse
6
from widelands.news.models import Post, Category
9
class NewsPostsFeed(Feed):
10
_site = Site.objects.get_current()
11
title = '%s feed' % _site.name
12
description = '%s posts feed.' % _site.name
15
return reverse('news_index')
18
return Post.objects.published()[:10]
20
def item_pubdate(self, obj):
24
class NewsPostsByCategory(Feed):
25
_site = Site.objects.get_current()
26
title = '%s posts category feed' % _site.name
28
def get_object(self, bits):
30
raise ObjectDoesNotExist
31
return Category.objects.get(slug__exact=bits[0])
35
raise FeedDoesNotExist
36
return obj.get_absolute_url()
38
def description(self, obj):
39
return "Posts recently categorized as %s" % obj.title
42
return obj.post_set.published()[:10]