Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.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
django中多个模型的对象列表_Django_Django Models_Aggregate - Fatal编程技术网

django中多个模型的对象列表

django中多个模型的对象列表,django,django-models,aggregate,Django,Django Models,Aggregate,我有多个类似的抽象模型 Class Article(models.Model): title = models.CharField() body = models.TextField() created_date = models.DateTimeField() author_name = models.CharField() class Video(models.Model): title = models.CharField() body =

我有多个类似的抽象模型

Class Article(models.Model):
    title = models.CharField()
    body = models.TextField()
    created_date = models.DateTimeField()
    author_name = models.CharField()

class Video(models.Model):
    title = models.CharField()
    body = models.TextField()
    created_date = models.DateTimeField()
    video_asset = models.CharField()
现在,在一个特定的页面上,我想根据这两个模型的创建日期将它们聚合到一个列表中。我想知道的所有型号都有一个
标题
和一个
创建日期
,因此我可以这样做:

<ul>
{% for object in object_list %}
    <li>{{ object.title }} on {{ object.created_at }}</li>
{% endfor %}
</ul>
    {对象列表%中的对象的百分比}
  • {{object.created_at}}上的{{object.title}}
  • {%endfor%}
我可以指望这些领域是没有问题的

我考虑过创建一个附加模型并使用通用外键。有点像一个聚合模型。然后每次创建一个新对象时,我都会发出一个要创建的对象的信号,然后从这个通用表中提取。不过我真的不喜欢这个主意。这似乎是非常多余的

有什么想法吗


更新:我找到了这个条目,但它在我的案例中不起作用,因为我正在使用抽象模型类(我只是没有在示例中显示它,以使其尽可能简单明了)。我研究的是继承而不是抽象,但我认为常量连接的性能会受到影响。可能不

只需在视图中按创建日期(或创建日期,两者都使用)对两个模型进行排序,并将结果合并到一个列表中。然后可以在模板中使用此列表。不需要模型继承或聚合模型。

只需按视图中的
创建日期
(或
创建日期
,两者都使用)对两个模型进行排序,并将结果合并到一个列表中即可。然后可以在模板中使用此列表。不需要模型继承或聚合模型。

您有输入错误。。。类文章应该是类文章
将类固定到类(使其小写)

您有打字错误。。。类文章应该是类文章 将类固定到类(使其小写)