Django, связывающий три модели
У меня вопрос. У меня есть модель Bb, которая включает параметры rubric и sub_rubric. Есть также модели Rubric и Sub_rubric, связанные по принципу "один-ко-многим". Вопрос: как связать rubric и sub_rubric друг с другом в модели Bb, чтобы при создании нового экземпляра модели Bb, когда меняется рубрика, менялся и список subrubruc.
Code:
class Rubric(models.Model):
name = models.CharField(max_length=50, db_index=True)
class Sub_Rubric(models.Model):
rubric = models.ForeignKey(Rubric, null=True, on_delete = models.PROTECT)
name = models.CharField(max_length=50, db_index=True, unique = True)
class Bb(models.Model):
title = models.CharField(max_length=50)
content = models.TextField(null=True, blank=True)
price = models.FloatField(null=True,blank=True)
published = models.DateTimeField(auto_now_add=True, db_index=True, )
rubric = models.ForeignKey(Rubric, null=True, on_delete = models.PROTECT, related_name='name')
sub_rubric = models.ForeignKey(Sub_Rubric, null=True, on_delete = models.PROTECT)
В Bb вы должны определить внешний ключ только для sub_rubric. Вы всегда можете получить доступ к Rubric через Sub_rubric.