Я создаю электронную торговлю Django 2.2.x, есть модель для страны и модель для категории, модель категории имеет собственный внешний ключ и внешний ключ страны. Категории могут отличаться от страны к стране.
Однако моя цель такова: родительские категории (Root) могут иметь страну, но подкатегории должны следовать только стране своей родительской категории. Надеюсь, я достаточно ясно понимаю.
Модели:
class Country(models.Model):
name = models.CharField(max_length=64, unique=True)
slug = models.SlugField(default=None, max_length=2, unique=True)
def __str__(self):
return self.name
class Category(models.Model):
name = models.CharField(max_length=64)
country = models.ForeignKey(Country, on_delete:models.PROTECT)
parentId = models.ForeignKey('self', on_delete:models.PROTECT)
slug = models.SlugField(default=None)
def __str__(self):
return self.name