Python 尝试在Django中将列表与DateTimeField和date对象组合
我有两个Django查询列表,其中一个是标题,另一个是在DateTimeField(文章和项目)创建的_,另一个是python函数的结果,该函数返回一个字符串标题和一个在date对象创建的_ 我想将这些列表链接在一起,这样我就可以将它们组合起来,并根据它们的日期字段对结果进行排序-但是目前我得到了以下错误:Python 尝试在Django中将列表与DateTimeField和date对象组合,python,django,django-views,Python,Django,Django Views,我有两个Django查询列表,其中一个是标题,另一个是在DateTimeField(文章和项目)创建的_,另一个是python函数的结果,该函数返回一个字符串标题和一个在date对象创建的_ 我想将这些列表链接在一起,这样我就可以将它们组合起来,并根据它们的日期字段对结果进行排序-但是目前我得到了以下错误: can't compare datetime.datetime to tuple 如何将这两个列表组合在一起?导致错误的代码是: latest_changes = sorted(
can't compare datetime.datetime to tuple
如何将这两个列表组合在一起?导致错误的代码是:
latest_changes = sorted(
chain(articles, projects, tweets),
key=lambda instance: instance.created)
或有没有更好的方法来代替使用链?理想情况下,我希望创建一个新列表,而不必让单个列表字段名称也匹配(我收集了与名称相似的链匹配)。根据错误消息判断,显然是
实例。created
是一个元组,用于一个链接的iterables
我的猜测是,无论哪一项是您所说的“返回字符串标题并在日期对象创建_的python函数的结果”,因为DateTimeField
不会返回元组
type(tweets[0].created)=元组是否返回True
我认为tweets.created是一个元组而不是Datetime对象。您可以使用dateutil模块将元组转换为python中适当的Datetime对象,然后可以无缝地进行比较:)谢谢,完成了这项工作。我使用tweet.created=datetime.date.fromtimestamp(time.mktime(rfc822.parsedate(tweet.created_at)))修复了它。