Как отобразить элемент категории 1 в категорию 2 на основе UID в Django Model?
Как отобразить элемент категории 1 в категорию 2 на основе UID в Django Model?
Category_1:
UID Item
1 A
1 B
2 C
2 D
ожидаемый результат:
Category_2:
UID Category_1 Cateogry_1_Des
1 1 A
2. 1. B
3. 2 c
4. 2. D
Кодирование модели (показать все товары категории_1, но нужно показать только товары, совпадающие по UID) :
Category_2 = models.ForeignKey(
Category_1,
verbose_name=_('cat2'),
related_name='cat2'
)
Как я понимаю, вы хотите сделать рекурсивную модель категории. Этот код предоставляет вам рекурсивную модель категории с более чем 2 глубинами, если вам достаточно только одной модели категории и поля.
class Category(models.Model):
name = models.CharField(max_length=255)
parent = models.ForeignKey(
'self',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name='children'
default=None
)
Это будет похоже на:
Category:
UID name parent
1 category_1 None
2. category_2 1
3. category_3 2
4. category_4 2
5. category_4 3
РЕДАКТИРОВАТЬ: категория_1 и категория_2 будут показывать одни и те же категории
class Category(models.Model):
name = models.CharField(max_length=255)
class MyModel(models.Model):
category_1 = models.ForeignKey(Category)
category_2 = models.ForeignKey(Category)