1

嗨,我有一个 Django 模板标签来获取 rss 提要。它非常简单,使用 feedparser 将解码结果放在上下文中。IE

context[self.var_name] = feedparser.parse(self.url)

对于特定的 url ' http://feeds.bbci.co.uk/news/england/oxford/rss.xml ' 从 feedparser 打印的第一个条目有一个这样的条目(我删除了其他键以保持这篇文章简短) .

{'media_thumbnail': [{'url': u'_67862157_67862150.jpg', 'width': u'66', 'height': u'49'}, {'url': u'67862000/jpg/_67862158_67862150.jpg', 'width': u'144', 'height': u'81'}]}

但是,在我的模板标签测试中,元素“media_thumbnail”已更改,因此列表为空。

我的测试用例

class GetRssTagTest(TestCase):

    def test_request(self):
        t = Template('{% load rss_parser %}}{% get_rss "feed.xml" as rss %}{{rss.entries.0}}')
        c = Context({})
        print t.render(c)

返回

{media_thumbnail': u''}

(再次删除了其他字段)

我不明白为什么元素已被删除?该词典中还有其他列表。

可以传递给上下文变量的内容是否存在某种键/大小限制?

我知道我可以自定义标签并在 Python 中执行此操作,但我宁愿保持标签通用以与其他提要一起使用。

谢谢

4

0 回答 0