def item_description(self, item): if isinstance(item, News): renderer_class = NewsRenderer.get_renderer_for_content_type( item.content_type) if renderer_class is None: renderer_class = NewsRenderer.get_renderer_for_content_type( 'text/plain') renderer = renderer_class(item) return renderer.render_to_string() elif isinstance(item, ActionItem): return item.full_description
def news_page(request, news_id): """ Displays a news item's full content. """ news = get_object_or_404(News, pk=news_id) renderer_class = NewsRenderer.get_renderer_for_content_type(news.content_type) if renderer_class is None: renderer_class = NewsRenderer.get_renderer_for_content_type('text/plain') renderer = renderer_class(news) return render(request, 'core/news.html', { 'news_renderer': renderer, 'news': news, })