什么是在rss feed中指定频道图像的"django-way"?我可以通过滚动我自己的xml手动完成它,但是正在寻找一种正确的方法.
编辑 dobrych的解决方案在这里不太适用,因为我特地询问了RSS而不是Atom提要
找到了正确的方法.正如文档所描述的那样,我需要通过Rss201rev2Feed的子类化和重写方法来创建自定义Feed生成器.
add_root_elements()
像这样:
class RssFooFeedGenerator(Rss201rev2Feed): def add_root_elements(self, handler): super(RssFooFeedGenerator, self).add_root_elements(handler) handler.addQuickElement(u"image", '', { 'url': u"http://www.example.com/images/logo.jpg", 'title': u"Some title", 'link': u"http://www.example.com/", }) class RssFooFeed(Feed): feed_type = RssFooFeedGenerator title = u"Foo items" link = u"http://www.example.com/" description = u"Some description"
对于有效的RSS 2.0,你应该使用这个:
class ImageRssFeedGenerator(Rss201rev2Feed): def add_root_elements(self, handler): super(ImageRssFeedGenerator, self).add_root_elements(handler) handler.startElement(u'image', {}) handler.addQuickElement(u"url", self.feed['image_url']) handler.addQuickElement(u"title", self.feed['title']) handler.addQuickElement(u"link", self.feed['link']) handler.endElement(u'image') class LastPublishedPromiseFeed(Feed): link = 'http://www.example.com' feed_type = ImageRssFeedGenerator def feed_extra_kwargs(self, obj): return {'image_url': self.link + '/image.jpg'}