Some changes after the horrible problem of writing the same ch9 on all the html pages
from django.core.exceptions import ObjectDoesNotExist
from django.utils.feedgenerator import Atom1Feed
from django.contrib.syndication.feeds import Feed
from hgbook.comments.models import Comment, Element
class MyAtomFeed(Atom1Feed):
title_type = u'html'
class Comments(Feed):
feed_type = MyAtomFeed
title = 'Mercurial - The Definitive Guide: recent comments'
subtitle = ('Recent comments on the text of “Mercurial: The '
'Definitive Guide”, from our readers')
link = '/feeds/comments/'
author_name = 'Our readers'
def feedfilter(self, queryset):
return queryset.order_by('-date')[:20]
def items(self):
return self.feedfilter(Comment.objects)
def item_author_name(self, obj):
return obj.submitter_name
def item_pubdate(self, obj):
return obj.date
def get_object(self, bits):
if len(bits) == 0:
return self.items()
elif len(bits) > 1:
raise ObjectDoesNotExist
return self.feedfilter(Comment.objects.filter(element__chapter=bits[0],
hidden=False))