Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.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 如何按时间过滤两个模型对象?_Python_Django_Django Models_Django Templates_Django Views - Fatal编程技术网

Python 如何按时间过滤两个模型对象?

Python 如何按时间过滤两个模型对象?,python,django,django-models,django-templates,django-views,Python,Django,Django Models,Django Templates,Django Views,models.py: class Post(models.Model): msg=models.TextField("Shout it out!:") college=models.ForeignKey('College') time=models.DateTimeField(auto_now_add=True) class Feed(models.Model): gender = models.CharField(max_length=5, choices=GENDER_CH

models.py:

class Post(models.Model):
  msg=models.TextField("Shout it out!:")
  college=models.ForeignKey('College')
  time=models.DateTimeField(auto_now_add=True)

class Feed(models.Model):
  gender = models.CharField(max_length=5, choices=GENDER_CHOICES, default='girl')
  location=models.CharField(max_length=25, choices=LOCATION_CHOICES)
  msg = models.TextField("Message")
  email = models.EmailField("Email:",blank=True, null = True)
  college=models.ForeignKey('College')
  time=models.DateTimeField(auto_now_add=True)

在模板中,我希望在根据时间过滤的流中同时显示提要和帖子。我该怎么做?如何按时间过滤这两个模型对象?可能吗?我需要帮助。谢谢。

你可以考虑创建一个包含公共字段的基类。然后,您可以执行类似于BaseFeed.objects.all().order_by('time')的查询,并在模板中对其进行迭代,但您可以将每个结果项视为其实际类型

class BaseFeed(models.Model):
    ....
    msg = models.TextField("Message")
    college=models.ForeignKey('College')
    time=models.DateTimeField(auto_now_add=True)
    ....
下面是一些我在做类似事情时经常提到的片段


那么您想将两者结合起来,然后按时间订购?最后两个都应该显示在一个提要中?两个都应该显示在同一页中。。就像在facebook新闻提要中,照片、评论、视频等都是按时间排序显示在一起的。在这种情况下,您无论如何都需要一个编程解决方案。没有一个简单的查询可以做这样的事情。