代码之家  ›  专栏  ›  技术社区  ›  nyxtom

为不同的日期范围重用Django RSS源

  •  0
  • nyxtom  · 技术社区  · 14 年前

    在Django有一种基于日期范围的RSS源的方法是什么?例如,如果我有以下类型的Django RSS提要模型。

    from django.contrib.syndication.feeds import Feed
    from myapp.models import *
    
    class PopularFeed(Feed):
        title = '%s : Latest SOLs' % settings.SITE_NAME
        link = '/'
        description = 'Latest entries to %s' % settings.SITE_NAME
    
        def items(self):
            return sol.objects.order_by('-date')
    

    如果我想要最少的填充物,那么让填充物一直使用,上个月,上个星期,最后24小时,反之亦然?

    1 回复  |  直到 14 年前
        1
  •  1
  •   Andrey Fedoseev    14 年前

    您需要为每个提要定义一个类。例如,上个月的订阅源:

    class LastMonthFeed(Feed):
    
        def items(self):
            ts = datetime.datetime.now() - datetime.timedelta(days=30)
            return sol.object.filter(date__gte=ts).order_by('-date')
    

    然后将这些源添加到 urls.py 如文档所示: http://docs.djangoproject.com/en/1.2/ref/contrib/syndication/

    推荐文章