A - возможно, не технически лучший - подход, который до сих пор работает для меня, заключается в определении моего собственного шаблона. Даже если он не инкапсулирован в CDATA или с использованием тега enclosure из RSS, он корректно отображается в большинстве читателей RSS, которые я пробовал - так что ясность «работает для меня».
description_template = "feeds/latest.html"
Шаблон представляет собой обычный Jinja-шаблон, который не поддерживает полный набор HTML. Тем не менее, для моего маленького проекта шаблон типа
<h1>{{ obj.description_short}}</h1>
<img src="{{request.scheme}}://{{request.META.HTTP_HOST}}{{obj.image.medium.url}}" />
(не устраивает построение URL, но это должно быть решаемо, например, с помощью идеи другого ответа
def item_extra_kwargs(self, item):
…
Так что мой полный вид выглядит примерно так:
class LatestFeed(Feed):
title = "Latest Items"
description = "Latest Items"
link = "/"
description_template = "feeds/latest.html"
def items(self):
return myModel.objects.all()
def item_title(self, item):
return item.title
def item_description(self, item):
return item.detail
def item_link(self, item):
return reverse('item_detail', args=[item.pk])