Python Django管理:筛选下拉列表中显示的外键
在我的应用程序中,我有以下模型来管理系列、季节和剧集:Python Django管理:筛选下拉列表中显示的外键,python,django,django-models,django-admin,foreign-keys,Python,Django,Django Models,Django Admin,Foreign Keys,在我的应用程序中,我有以下模型来管理系列、季节和剧集: class Series(models.Model): title = models.CharField(max_length=100, unique=True) year = models.IntegerField() class Meta: verbose_name_plural = "series" class Season(models.Model): number = model
class Series(models.Model):
title = models.CharField(max_length=100, unique=True)
year = models.IntegerField()
class Meta:
verbose_name_plural = "series"
class Season(models.Model):
number = models.IntegerField()
title = models.CharField(max_length=100)
series = models.ForeignKey(Series)
class Meta:
unique_together = ('number', 'series',)
class Episode(models.Model):
number = models.IntegerField(unique=True)
title = models.CharField(max_length=100)
series = models.ForeignKey(Series)
season = models.ForeignKey(Season)
class Meta:
unique_together = ('number', 'season',)
def __str__(self):
return self.title
我使用Django admin来管理我的模型:我将季节设置为系列的内联(在系列上下文之外自己创建季节看起来很奇怪)。在这之前,一切都很好
由于我不能在季内再次嵌套剧集,因此需要单独创建剧集。
但是,插曲表单包含两个下拉列表:一个用于选择季节(列出数据库中所有系列中的所有现有季节),另一个用于选择系列。
我想在这里只看到选定系列中的季节
这是可以实现的,还是我真的需要从所有现存的赛季中选择一个赛季?有没有一种通用的方法可以解决这个问题?当然,一种可能的方法是制作系列剧,并单独制作带有内联插曲的季节。我只是想看看django admin在这一点上是否是可管理的。当选择一个系列时,您需要使用javascript(可能还有ajax)来过滤更新季节。关于这一点有很多问题,还有一些应用程序需要帮助