Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 尝试在Django中将列表与DateTimeField和date对象组合_Python_Django_Django Views - Fatal编程技术网

Python 尝试在Django中将列表与DateTimeField和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(

我有两个Django查询列表,其中一个是标题,另一个是在DateTimeField(文章和项目)创建的_,另一个是python函数的结果,该函数返回一个字符串标题和一个在date对象创建的_

我想将这些列表链接在一起,这样我就可以将它们组合起来,并根据它们的日期字段对结果进行排序-但是目前我得到了以下错误:

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)))修复了它。