Python 为什么Django Atom1Feed使用atom:updated而不是atom:published?
我在Django中创建了一个Atom提要,使用的类类似于:Python 为什么Django Atom1Feed使用atom:updated而不是atom:published?,python,django,feed,atom-feed,Python,Django,Feed,Atom Feed,我在Django中创建了一个Atom提要,使用的类类似于: class AtomFeed(Feed): feed_type = feedgenerator.Atom1Feed # ... def item_pubdate(self, post): return datetime.datetime(post.date.year, post.date.month, post.date.day) 项目的结果XML: <entry> <
class AtomFeed(Feed):
feed_type = feedgenerator.Atom1Feed
# ...
def item_pubdate(self, post):
return datetime.datetime(post.date.year, post.date.month, post.date.day)
项目的结果XML:
<entry>
<title>..</title>
<link href="..." rel="alternate"></link>
<updated>2010-10-18T00:00:00+02:00</updated>
<author><name>...</name></author>
<id>...</id>
<summary type="html">...</summary>
</entry>
似乎没有提到发布的元素
这是Django的bug吗?我是不是误解了原子RFC?我还遗漏了什么吗?你没有遗漏任何东西。Atom RFC是正确的,这是Django中的一个已知错误;看
它看起来像是一个相对简单的修复程序,所以请随意进入并修补它^_^ 我想说这是django的一个明确错误。当我说“当我出版它的时候”,我不希望我的翻译人员说“上次我修改它的时候”。我看你已经有了,所以我想时间会告诉你的。它看起来不像是一个“缺失”的功能。在Django 1.2和1.3中,可以向提要添加属性。如果我在1.3中记得很清楚的话,那么只需要通过Feed类的方法项添加额外的kwargs。“return{'published':self.get_object().created}”,这也可以创建podcast提要和其他类型的具有特殊项或属性的提要,这是个好消息,但它没有解决atom:updated
元素被滥用的问题,而且重要的atom:published
元素根本不是现成的。。。既然我已经阅读了对你问题的评论,那么你是那个提出错误的人的赌注是什么呢~_~是的,就是我;)不过,它的状态已更改为“已接受”,因此它至少具有某种程度的有效性。好吧,这就是第一堆溢出答案的目的-先学习阅读整个问题!=)
if item['pubdate'] is not None:
handler.addQuickElement(u"updated", rfc3339_date(item['pubdate']).decode('utf-8'))