1 2 3 4 5 6 7 8 9 10 11 12 13 14 | @register.inclusion_tag('my_template.html') def pull_feed(feed_url, posts_to_show=5): feed = feedparser.parse(feed_url) posts = [] for i in range(posts_to_show): pub_date = feed['entries'][i].updated_parsed published = datetime.date(pub_date[0], pub_date[1], pub_date[2] ) posts.append({ 'title': feed['entries'][i].title, 'summary': feed['entries'][i].summary, 'link': feed['entries'][i].link, 'date': published, }) return {'posts': posts} |
Comments
Add in some caching, and this is a winner. :)
#
Now with caching: http://www.djangosnippets.org/snippets/384/
#
Why not use django's built in template fragment caching?
http://www.djangoproject.com/documentation/cache/#template-fragment-caching
#
this one loads data into a template variable you can use afterwards: http://www.djangosnippets.org/snippets/852/
#
you didn't add the imports
#