我正在从Django应用程序发布一个feed。
我将django.contrib.syndication.feeds.Feed子类化,一切正常,但未在Feed上发布的日期除外。
这是我在Feed类上创建的方法
def item_pubdate(self, item): return item.date
此方法永远不会被调用....
答案 0 :(得分:3)
根据Django文档中的Feed Class Reference,item_pubdate字段应该返回datetime.datetime对象。如果item.date只是一个DateField而不是DateTimeField,那可能会导致问题。如果是这种情况,您可以更改方法以生成日期时间,然后返回该日期时间。
import datetime
def item_pubdate(self, item):
return datetime.datetime.combine(item.date, datetime.time())
答案 1 :(得分:0)
这就是我的设置方式,它正在发挥作用。
class AllFeed(Feed):
def item_pubdate(self, item):
return item.date
答案 2 :(得分:0)
我一直在撞击这个人。似乎django rss系统需要一个“datetime”对象而不仅仅是日期(因为它需要一个时区,而日期对象没有时间,更不用说时区......)
我可能错了,但这是我通过错误日志找到的东西。