【发布时间】:2020-04-24 11:16:20
【问题描述】:
我在现有数据库中有多个模型,它们都与另一个模型具有多对一关系。例如:
class Collection(models.Model):
start = models.DateTimeField()
end = models.DateTimeField(blank=True, null=True)
class Meta:
managed = False
db_table = 'Program'
class ItemA(models.Model):
collection = models.ForeignKey(
'Collection', models.CASCADE, db_column='Collection_id')
...
class Meta:
managed = False
db_table = 'ItemA'
class ItemB(models.Model):
collection = models.ForeignKey(
'Collection', models.CASCADE, db_column='Collection_id')
...
class Meta:
managed = False
db_table = 'ItemB'
我想要做的是在集合模型的管理页面上以单个TabularInline 显示这些模型。我还希望能够过滤模型。如果没有数据库中的继承,这可能吗? (我不想添加一般项目表)。在文档中,我只能找到如何将 TabularInline 用于单个模型。所以我的问题基本上是:解决这个问题的最佳方法是什么?是否可以定义某种视图模型 dat 不在数据库中,但可用于显示 TabularInline 中的所有项目?
【问题讨论】:
标签: django django-models django-admin